[image]

Микроконтроллеры AVR - применение и Краткий Курс - часть 9

 
1 7 8 9 10 11 47
+
-
edit
 

Serge77

модератор

обновил задачу 6
 


Очень полезная страничка.
Схемы после слов "Вот еще пара схем:" не видны.
   
RU termostat #10.04.2006 14:37
+
-
edit
 

termostat

аксакал

Схемы после слов "Вот еще пара схем:" не видны.
 


исправил!
   

NoS

новичок
Есть необходимость принять по SPI 16 бит данных. Подскажите, как это сделать, если регистр данных SPI только 8-разрядный??
   
RU termostat #10.04.2006 21:48
+
-
edit
 

termostat

аксакал

сэмплы это круто!
 


для msp430 IAR или ICC

для tms470 наверно Keil IAR и наверно будет ICC

короче на Ti смотри секцию tools для них там все есть.


   

NoS

новичок
Компилеры видел там, есть такое. Надо еще про программаторы найти. На микросхемке термометра Т123(SOT23-6) того-же ТИ никак нимогу найти ключ, такое бывает??
   

NoS

новичок
Вопрос снят. Там оказывается по ориентации надписи на чипе.
   

Yuran

опытный

Кто нибудь пробовал ставить нестандартный битрейт для UART'a например 12500 вместо 14400?
   

pokos

аксакал

Где этот УАРТ-то расположен?
   

Yuran

опытный

Где этот УАРТ-то расположен?
 


AVR Tiny2313-20 MHZ и стандартный COM порт на PC
   

pokos

аксакал

Пробовал. Но для задания нестандартных скоростей на СОМ нужно писать делители в УАРТ РС самому, т.е какой-ни-то программкой.
   
RU termostat #11.04.2006 13:05
+
-
edit
 

termostat

аксакал

Кто нибудь пробовал ставить нестандартный битрейт для UART'a например 12500 вместо 14400?
 


битрэйт можно любой возможный ставить, главное чтоб отличие скоростей у двух устройств было не более того что визады компилеров показывают как допустимую ошибку.
   
UA AlexandrM #11.04.2006 15:14
+
-
edit
 

AlexandrM

новичок
Кто нибуть пробовал собирать програматор fischl.de - USBasp - USB programmer for Atmel AVR controllers ? Или что можно на коленке собрать на usb?
   
RU termostat #11.04.2006 15:43
+
-
edit
 

termostat

аксакал

да. линк на него я добавил на стр 7 курса "програамирование МК" после положительный отзывов на телесистемах и робофоруме.
   
UA AlexandrM #11.04.2006 17:15
+
-
edit
 

AlexandrM

новичок
А оболочка на него под виндоуз есть или с командной строки?
   

NoS

новичок
Переменная temp_value (тип integer) содержит отрицательное 12 разрядное двоичное число, в котором старший бит является знаковым. Нужно получить значение его модуля, т.е. знак я уже учел, а саму цифру надо. Я делая это так:

temp_value&=0x7FF; избавляемся от знакового бита
temp_value-=1; отнимаем ед.
temp_value=~temp_value; инвертируем число

Правильно я делаю, а то чет неполучается???

P.S. А есть "пять проводков" для msp430? Или какой-нить программатор, чеб дома сделать для этого чипа.
   
RU termostat #12.04.2006 01:22
+
-
edit
 

termostat

аксакал

"NoS":
Переменная temp_value (тип integer) содержит отрицательное 12 разрядное двоичное число

Нужно получить значение его модуля

temp_value&=0x7FF; избавляемся от знакового бита
 


Мне кажется ты запутал себя вот этим: "12 разрядное двоичное число"

Переменная содержит просто "число" соответсвенно знаковый бит будет самый старший - 15-й а не 11-й

т.е. наверно так нужно:

temp_value &= 0x7FFF; // избавляемся от знакового бита

Но ты пишешь на Си изображая ассемблер - я не против,

но омжно ведь можно как в обычной математике умножить отрицательное
число на -1 чтоб получить его модуль.

temp_value *= -1; // отрицательное стало положительным

"NoS":
P.S. А есть "пять проводков" для msp430? Или какой-нить программатор, чеб дома сделать для этого чипа.
 


Да есть.

Как обычно - читаем курс и находим ВСЕ что нужно!

линки со страницы 6 курса.

 


ещё:

MSPFET — MSP430 flash programming utility - программатор пережигающий


фьюз секретности, бутлодер и прочее

MSP430.info - providing you with info on MSP430

providing you with info on MSP430 based development // www.msp430.info
 

обязательно посетить: Error 404


Ti.com фантастично ШВЫРЯЮТСЯ 80 ногими МК и меньшими тоже - аж по 3 штуки за раз и заказы принимают каждый день ...

А логику и прочую мелочь аж по 10 штук ! и за раз до 8-ми наименований можно заказать - т.е. 80 компонентов!

Как бы гейзер не заглох...


Терраэлектроника - решение актуальных проблем разработчиков электронной техники - продают маленький "JTAG msp430 - вилка в USB"

и почтой высылают.


ниже оптоизолированый программатор - соответвсенно если оптроны повыкидывать получаться обычные "проводки"
Прикреплённые файлы:
 
   
Это сообщение редактировалось 12.04.2006 в 02:35
RU termostat #12.04.2006 01:24
+
-
edit
 

termostat

аксакал

Народ!

у msp430 АЦП 12 бит

а у некоторых есть и по 16 !

Есть и ЦАПы ...

так что все на ti.com/msp430

и переползаем... переползаем...

=====

компилятор ICC тоже для них есть.
   

pokos

аксакал

и переползаем... переползаем...
 

Давно собираюсь, да вот как-то не решился пока окончательно. Может, на конференцию 17-го мая схожу, тогда уж и решусь....
   

at90

новичок
Вроде Техас купил Chipcon. Их чипы даже есть на сайте TI.
Но самплы не даёт! А так было бы не плохо.
   
RU termostat #12.04.2006 10:57
+
-
edit
 

termostat

аксакал

Ti.com свои дает TRFxxxx - ничуть не хуже. Есть мини плата и готовый проект трансивера на них в Аноутах Ti
   

NoS

новичок
Переменная содержит просто "число" соответсвенно знаковый бит будет самый старший - 15-й а не 11-й
 

Нет. Здесь дело в том, что ТИком-ский термодатчик по SPI совместимому протоколу передает два байта информации о температуре. В его даташите указано, что мол 0-й и 1-й биты в каком-то высокоимпедансном состоянии, и помечены, соответственно, Z. 2-й бит всегда читается нулем. Но на практике я посмотрел, у меня и 3-й бит всегда ноль. Остальные 12 бит (кроме знакового 11-го) содержат информацию о температуре, которая похожа на истину. Так как я не понял, как можно принять 16 бит по AVR-у SPI, процесс организовал "в лоб", просто меняя уровни на ногах И/О и получил тем самым заветные данные. От младших 4-х разрядов я избавился ранее, потому и остаются те самые 12 бит.
P.S.А насчет *-1, ето дельный совет, я чет и в самом деле не подумал, начал извращатся... В общем, спасибо, буду биться дальше.
   
RU termostat #12.04.2006 11:50
+
-
edit
 

termostat

аксакал

От младших 4-х разрядов я избавился ранее, потому и остаются те самые 12 бит.
 


ну так значит 15-й бит знака отрицательного числа ты раньше уже УБИЛ !

Компилеру пофигу -3 или -170 ты впишешь в двухбайтовый отрицательной тип - знак будет отражать 15-й бит !

разьве не так?

Т.е. преобразуй в положительное а затем уже "убивай" если хочешь 4 старших бита - только нафига ?
   

NoS

новичок
Чет не хочет работать как следует. В общем вот ключевые фрагменты программы:

temp=0; // По прерыванию таймера раз в секунду попадаем в функцию его обрапотки,
PORTB.4=0; // начинается с получения инф-ии из термодатчика
delay_us(1); // PORTB.4 - SS
PORTB.7=1; // PORTB.7 - SCK
delay_us(1); // PINB.6 типа MISO
PORTB.7=0;
temp=PINB.6;
delay_us(1);

............

PORTB.7=1; //момент получения 4-го бита. переменную temp_value
delay_us(1); //я использовал для получения температуры. Для положит. значений все ОК
PORTB.7=0;
temp<<=1;
temp+=PINB.6;
temp_value=temp;
delay_us(1);

............

PORTB.7=1;
delay_us(1);
PORTB.7=0;
temp<<=1;
temp+=PINB.6;
delay_us(1);
PORTB.4=1;
temp&=0x8000;
if (!temp){
b=10; //Это условно b=10(переменная обозначает знак), для вывода на 7-й
te=temp_value*0.0625; //индикатор. если b=10- сегмент не горит
//0.0625 цена деления прибора

}
else {
b=9; //если b=9-выводится символ "-", типа отриц темп.
temp&=0x7FF0; //сдесь сразы маскирую и знаковый, и 4-е младших бита
te=(temp*(-1))*0.0625; // и рассчитываю значение темпер-ры.
}

Дальше в программе происходит преобразование числа в цифры, а вывод на инд. осущ. в while (1) main'a
Вот тока положительные температуры отображаются как следует, а отриц-- "-1" и все.
   
+
-
edit
 

Serge77

модератор

На работе задача появилась. Есть у нас насос для хроматографа, хороший, но старый, управление ручное. Скорость подачи жидкости регулируется переменным резистором на 5 КОм (это я уже разобрал и посмотрел). Как бы этот резистор заменить на управление с компьютера?

Кажется есть такие резисторы, сопротивлением которых можно управлять с МК. А МК с компьютером я уж как-нибудь свяжу ;^))

Или есть другие решения?
   
RU termostat #12.04.2006 13:09
+
-
edit
 

termostat

аксакал

Вот вам - Чипсет DOLPHIN - заказывайте наздоровье !

Чипсет состоит из 2-х микросхем: TRF6903 и DBB03:

1. TRF6903 представляет собой однокристальный передатчик и супергетеродинный приемник с программируемым синтезатором частоты на диапазон 400-900 МГц (ряд не лицензируемых частот ISM band).


2. DBB03 представляет собой уже запрограммированный логический контроллер пакетного протокола обмена с коррекцией ошибок и простым UART (19.2 kbps) интерфейсом с внешним миром. Протокол позволяет объединить в иерархическую сеть до 65536 подобных узлов.

С целью повышения помехозащищенности в сложных условиях и повышения дальности связи (до 1 мили) контроллер использует скачущую частоту настройки приемопередатчика, расширяющую ВЧ спектр (FCC compliant (Sec 15.247) frequency hopping spread spectrum FHSS).


Полное описание проекта (включая gerber файлы печатных плат) доступно здесь.


Frequency Hopping Spread Spectrum (FHSS) Wireless UART Chipset Reference Design - DOLPHIN-WUART-REF - TI Tool Folder

Dolphin is a Frequency Hopping Spread Spectrum (FHSS) Wireless UART chipset for the 902-928 MHz US ISM Band. The Dolphin chipset is a FCC pre-certified reference design and consists of the TRF6903 RF transciever and the digital baseband ASIC DBB03. The DBB03 contains the firmware for the Dolphin chipset in its ROM-based program memory.

The schematics and layout of the Dolphin chipset are provided and can be used as a FCC pre-certified reference design to lower system development hurdles and hence faster time to market.



// focus.ti.com
 

   
1 7 8 9 10 11 47

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru