Перейти к содержанию
    

konst11

Участник
  • Постов

    34
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о konst11

  • Звание
    Участник
    Участник
  1. Не забывайте об этом: #include "stdio.h"
  2. Для работы с блоками необходимо копировать исполняемый код в RAM
  3. attiny13

    ATtiny13 не имеет в своем составе схемы возбуждения кварцевого резонатора, необходимо подключать к выв. 2 внешний тактовый генератор. Из даташита: 6.2.1 External Clock To drive the device from an external clock source, CLKI should be driven as shown in Figure 6-2. To run the device on an external clock, the CKSEL fuses must be programmed to “00”.
  4. Это все так, но вопрос то в другом: почему при единственном RC генераторе с частотой 9.6 МГц и внутреннем делителе частоты на 2 в контроллере предусмотрено два калибровочных байта.
  5. По поводу различий между ATtiny13(Rev. 2535I–AVR–05/08) и ATtiny13A( Rev. 8126B–AVR–12/08) различий в даташитах в части описания калибровочных байт нет никаких. В наличии два генератора и два калибровочных байта. Для ATtiny13( Rev. 2535G–AVR–01/07) имеем два генератора и один калибровочный байт. А как определить ревизию конкретной мс? Стою на асфальте я , в лыжи обутый........
  6. Полностью согласен с Вашим выводом. Спасибо! Именно эта Ваша фраза и разъясняет ситуацию. Но вот изречение на стр 105 даташита опять настораживает Зачем тогда на частоте 4.8 Мгц программно обновлять регистр OSCCAL вторым калибровочным байтом? А вот здесь не совсем так: Значения калибровочных байт для частот 9.6 и 4.8Мгц отличаются всего лишь на несколько дискрет. Поэтому , если первоначальная настройка генератора была на 9.6 Мгц и в ходе выполнения программы генератор перестраивается при помощи команды OSCCAL=(Cal_byte4.8MHz). Изменения частоты при этом будут незначительными. То есть смысл введения в сигнатуру контроллера второго калибровочного байта остается непонятным
  7. Хорошее предложение! Вот только с каким разбросом настроены эти генераторы? Судя по описанию регистр OSCCAL по умолчанию в нуле. Согласно даташиту ATTiny13A (другие варианты ATtiny13 сняты с производства) см.график фиг19-51 частота генератора 4.8 Мгц меняется в диапазоне 2-9 МГц при изменении OSCCAL 0-0x7F. На какой частоте будет молотить RC генератор, если не грузить OSCCAL? На практике проверил с десяток образцов - при выборе фузами генератора 4.8 Мгц разброс частоты не превышает 5%, регистр OSCCAL не загружается. Но ведь при этом OSCCAL=0, а согласно графика 19-51 частота при этом значении равна 2Мгц? Опять какая то нестыковка. Мне задают вопрос- почему выбрана частота 4.8 а не 9.6 МГц. Выбор этой частоты диктуется батарейным питанием устройства (лит. бат) -получается гарантированная работа на напряжении 1.8V. Хотя справедливости ради можно отметить: проверял несколько экземпляров с частотой 9.6Мгц на напряжении 1.8V- работают! Это при комнатной температуре. А что будет на крайних температурных точках? Согласно даташита работа не гарантируется.
  8. Ответ техподдержки с Atmel: Dear Customer, For the ATtiny13A, the 4.8 MHz clock is indeed generated by dividing the 9.6 MHz clock. However, the device still has separate calibration bytes for these two modes. То бишь они признаются , что генератор Один единственный и вторая частота получается делением на 2! А вот по поводу равенства калибровочных байт для первой и второй частот непонятно, написал еще раз в техподдержку! Ждем.
  9. Кстати и для ATtiny13 и ATtiny13V в редакции от 05/08 на стр 104 также говорится о двух калибровочных байтах. Согласен, из программы пользователя прочитать калибровочный байт для 4.8МГц не получится. При прошивке микросхем программатор должен читать оба калибровочных числа,т.к. индивидуально танцевать с каждой мс при серийном производстве никто не будет. Примерно так делает Elnec T51(делают в Чехии): он читает калибровочный байт для выбранного фузами генератора и предлагает прописать его в ячейку flash или EEPROM по заданному пользователем адресу памяти, а программа пользователя должна читать его из этой ячейки и грузить в регистр OSCCAL. Засада в том, прочитанный калибровочный байт одинаков для каждого из двух генераторов. . И это несмотря на то, что программатор Elnec c обновленной(июньской версией ПО) Почему одинаковый, если Atmel говорит о двух байтах, а разработчики ПО для программаторов сообщают только об одном? Тогда остается только версия одного генератора на 9.6 МГц и наличии делителя на 2
  10. А вот и нет. В даташите (для ATtiny13A)стр.105 написано, что в наличии два калибровочных байта: 17.3 Calibration Bytes The signature area of the ATtiny13A contains two bytes of calibration data for the internal oscil- lator. The calibration data in the high byte of address 0x00 is for use with the oscillator set to 9.6 MHz operation. During reset, this byte is automatically written into the OSCCAL register to ensure correct frequency of the oscillator. Собственная калибровка не требуется, т.к. точность на фабрике устраивает. Мой вопрос так и не проясняется. В продолжение (из даташита) The calibration data for 4.8 MHz operation is located in the high byte at address 0x01 of the signature area.
  11. В даташите на Tiny13 написано, что в сигнатуре имеются два калибровочных байта: один для внутреннего генератора 9.6 МГц, второй для внутреннего генератора 4.8МГц. Причем первый из них грузится аппаратно при старте (если выбран 9.6), второй (для частоты 4.8)нужно грузить программно. По особенностям работы устройства требуется генератор на 4.8Мгц,однако программатор ChipProg2 показывает только один калибровочный байт и непонятно для какой частоты. М.б. генератор только один. а вторая частота получается делением на 2 и потому одно калибровочное число? Непонятно..Как поступить?
  12. Компилятор CC5X

    Для мелконогих PIC очень удобен. Легко прикрутить к MPLab. Недостатки- возможно создать один файл в проекте. Но для объемов менее 1к это несущественно.
×
×
  • Создать...