-
- ИМХО,начните с толкового описания задачи. Скорость уарт, SPI, размер пакета данных, частота прерывания и прочее. Тогда на пальцах сможете подсчитать. - Ruslan(15.03.2008 19:58)
- +1. 2Winsanto: случаи ведь разные бывают. Делал подобное Алексей Мусин(220 знак., 17.03.2008 07:11)
- Возьмите CodeVision AVR, запустите его Визард с UART, настроенным на работу по прерываниям как на прием, так и на передачу и с объемом буфера, допустим, 128. Он вам 90% программы и сгенерит. Останется только SPI часть для обслуживания этого буфера :) - Dir(15.03.2008 15:55)
- Либо поднять скорость по SPI и не мучиться, либо искать (не знаю зачем) недорогое ОЗУ в других контроллерах (типа AT91SAM7S64/PIC24;) - Vit(15.03.2008 14:17)
- А обязательно массив весь держать сразу? может прям на лету извратиться? у меня иногда получалось, в отдельных случАях. - blackbit(15.03.2008 14:15)
- Скорость по SPI - 5.5 MHz, по УАРТ допустим 115200 (но можно и меньше в разумных пределах) В принципе прокатит отправка и между прерываниями от приемника УАРТА... - Winsanto(15.03.2008 14:51)
- Такой буфер нужОн когда надо из быстрого в медленный.. А тут.. Боитесь, что SPI не успеет? ;) Я почему-то подумал, что еще и обрабатывать их надо накопленное, а оно эвона чего.. - blackbit(15.03.2008 16:15)
- просто сделайте буфер под максимальный размер своего пакета.. не на 5 же кило они у вас. - blackbit(15.03.2008 16:14)
- Ну и? Принял по UART - отправил по SPI - тут хоть Tiny ставь с 128 байт RAM - на кой буфер-то?? Да и не между прерываниями UARTа, а прямо в них - AVR(15.03.2008 15:17)
- Такой буфер нужОн когда надо из быстрого в медленный.. А тут.. Боитесь, что SPI не успеет? ;) Я почему-то подумал, что еще и обрабатывать их надо накопленное, а оно эвона чего.. - blackbit(15.03.2008 16:15)
- Скорость по SPI - 5.5 MHz, по УАРТ допустим 115200 (но можно и меньше в разумных пределах) В принципе прокатит отправка и между прерываниями от приемника УАРТА... - Winsanto(15.03.2008 14:51)
- Считать надо. Если серия миллионная, тогда вообще нужно другой проц (например, ARM) применить, чтобы сэкономить на себестоимости, а в мелкой серии, разумеется, следует взять просто Мега2561, т.к. внешнее ОЗУ по-любому будет дороже и геморройнее - AVR(15.03.2008 14:10)
- Дороговастинький микроконтроллер... - Winsanto(15.03.2008 14:52)
- ИМХО,начните с толкового описания задачи. Скорость уарт, SPI, размер пакета данных, частота прерывания и прочее. Тогда на пальцах сможете подсчитать. - Ruslan(15.03.2008 19:58)