Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 34 из 38 ПерваяПервая ... 2431323334353637 ... ПоследняяПоследняя
Показано с 331 по 340 из 374

Тема: BASCOM AVR для радиолюбителей

  1. #331
    Цитата Сообщение от Сергей Урал Посмотреть сообщение
    Сообразить как это сделать ни как не могу, именно по этой причине обратился за помощью.
    Поди туда- не знаю куда, принеси то- не знаю что.
    Код:
    $regfile = "attiny13a.dat"
    $crystal = 9600000
    $hwstack = 16
    $swstack = 16
    $framesize = 12
    
    
    'откл CKDIV8
    Config Clockdiv = 1
    
    
    'конфигурация выхода
    Config Portb.0 = Output
    Vyhod Alias Portb.0
    '****************************
    Const Ts = 2
    '1 дергает ногу по переполнении Т0
    '2 дёргает ногу с PWM
    '****************************
    #if Ts = 1
      Dim T As Byte : T = 106                            'clock / T and Prescale  1khz
      Config Timer0 = Timer , Prescale = 64         'Prescale value must be 1,8,64,256 or 1024
      On Timer0 Impulse
      Enable Timer0
      Start Timer0
      Enable Interrupts
    #endif
    '****************************
    #if Ts = 2                                                  'PWM
      Config Timer0 = Pwm , Compare A Pwm = Clear Down , Prescale = 64
    ' Pwm0a = 128                                            'скважность=2
     Do
      !lds R16 , {Pwm0a}                                   'Плавная перестройка ШИМ
      !dec R16
      !sts {Pwm0a} , R16
      Waitms 10
     Loop
    #endif
    '############################
    #if Ts = 1
     Do
      nop
     Loop
    '.'.'.'.'.'.'.'.'.
     Impulse:
      Toggle Vyhod
      Tcnt0 = T
     Return
    #endif
    Ts написано что делает при компиляции. Оба варианта таймером дёргают ногу. Типа аппаратно. Второй вариант с PWM. Если Pwm0a установить половину разрядности Т0 получите разыскиваемый "аппаратный меандр".


  2. #332
    Всем откликнувшимся спасибо за помощь!

  3. #333
    Оу ассемблерные вставки в баскоме, респект!

  4. #334
    Цитата Сообщение от EU1ABR Посмотреть сообщение
    ассемблерные вставки в баскоме, респект!
    А что такого удивительного,там ассемблер спокойно вставляется,хоть всю программу напиши на нём.

  5. #335
    А знак диеза (#) перед командами там в тексте что делает?
    Что-то я раньше такого не встречал!

  6. #336
    Со знака # начинаются директивы условной компиляции.
    Участок между #if Ts = 1 и #endif компилируется только при Ts равном 1, в противном случае пропускается
    Участок между #if Ts = 2 и #endif компилируется только при Ts равном 2, в противном случае пропускается.

    Значение Ts меняют вручную в начале программы в зависимости от того, какой вариант нужно получить (по переполнению таймера или с PWM).

  7. Спасибо от Adagumer

  8. #337
    Вообщем вышло у меня вот так.

    $Regfile="m8def.dat"
    $Crystal=4096000
    $hwstack=40
    $swstack=16
    $framesize=32

    Enable Interrupts
    Config Timer1 = Timer, Prescale = 64, Compare A = Toggle, Clear Timer = 1

    Config Portb.1 = Output
    Dim Endtime as Word
    Endtime = 32

    Do
    COMPARE1A = Endtime
    Loop
    End

    Сможете подсказать, будут ли при таком решении какие либо подводные камни.

  9. #338

    Регистрация
    28.07.2012
    Адрес
    Yelets
    Сообщений
    547
    Позывной
    R2GKH
    Коллеги, может что и упустил, но недавно стало откровением то, что "часовой 32768" кварц можно повесить на ножки PB6,7 и тактировать им исключительно таймер(ы). При этом ядро тактируется от встроенного "калиброванного RC-генератора".
    А как должна выглядеть строка
    CONFIG TIMERx=
    для этого?
    И как запараметрировать ножки PB6,7 ?

  10. #339
    Цитата Сообщение от Vital R2GKH Посмотреть сообщение
    Коллеги, может что и упустил, но недавно стало откровением то, что "часовой 32768" кварц можно повесить на ножки PB6,7 и тактировать им исключительно таймер(ы). При этом ядро тактируется от встроенного "калиброванного RC-генератора".
    Не знал такой возможности и в даташите пока не вижу. Имею ввиду Atmel, например Atmega328P или подобные.
    STM32 да, имеет такую возможность. Можно и два кварца поцепить. Мало того, если оба кварца по какой-то причине перестают генерить, контроллер автоматчески переходит на тактирование от RC-генератора.


  11. #340
    Цитата Сообщение от Vital R2GKH Посмотреть сообщение
    А как должна выглядеть строка
    CONFIG TIMERx=
    для этого?
    Для мега8 по моему так конфигурируется. Кварц 32768 припаивается без конденсаторов к Xtal1 Xtal2 Давно часы делал. Не помню уже и исходник не сохранился.
    $regfile = "m8def.dat"
    $crystal = 8000000
    Config Timer2 = Counter , Edge = Falling , Prescale = 1
    Цитата Сообщение от Владимир_К Посмотреть сообщение
    Не знал такой возможности и в даташите пока не вижу. Имею ввиду Atmel, например Atmega328P или подобные.
    В мега16 есть. http://easyelectronics.ru/avr-uchebn...m-tajmera.html

  12. Спасибо от Vital R2GKH, Владимир_К

Страница 34 из 38 ПерваяПервая ... 2431323334353637 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. USB программатор для AVR
    от UR4QBP в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 38
    Последнее сообщение: 03.11.2014, 11:55
  2. AVR Studio для Linux
    от alldn в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 69
    Последнее сообщение: 25.09.2011, 23:16
  3. Си для AVR
    от bob1 в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 65
    Последнее сообщение: 13.09.2010, 17:55
  4. Паскаль для AVR
    от Serg_PRQ в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 44
    Последнее сообщение: 05.01.2009, 11:15
  5. Среда для программирования и внутрисхемной отладки AVR и др
    от RZ6AT в разделе Конструкции на микроконтроллерах для радиолюбителей
    Ответов: 8
    Последнее сообщение: 15.10.2008, 07:53

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •