Найдено 13 результатов
Перейти к расширенному поиску
- Paha100
- Пт окт 03, 2014 21:48:11
- Форум: AVR
- Тема: CodeVision AVR в вопросах и ответах
- Ответы: 8415
- Просмотры: 2492378
Аlex писал(а):Ужасный код
К счастью не мой ))
На просторах интернета найден.
Ваш читается с ходу, даже с моими сильно поверхностными знаниями Си.
- Paha100
- Пт окт 03, 2014 10:56:34
- Форум: AVR
- Тема: CodeVision AVR в вопросах и ответах
- Ответы: 8415
- Просмотры: 2492378
Вот более полный код
Читает с внешнего регистра 32 бит данные побайтно.
b1, b2,b3,b4 соотв байты
а byte1 и т.д. это для управления регистром какой байт читать, привязаны к ногам МК
но почему PORTB=255-(1<<byte1) так записано, это и смутило.
#define byte1 PB4
#define byte2 PB3
#define byte3 PB2 ...
- Paha100
- Пт окт 03, 2014 09:53:27
- Форум: AVR
- Тема: CodeVision AVR в вопросах и ответах
- Ответы: 8415
- Просмотры: 2492378
За то что послали на изучение битовых операций спасибо.
переменная byte1 как битовая
понятно что в эту переменную записывается 1, представлено 1<<byte1
а что делает именно вот это 255-
- Paha100
- Ср сен 24, 2014 09:58:54
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
Впал в ступор. Симулирую в Протеусе с Атмегой2560. В программе подаю сигналы на порт B все нормально проходит. Как только эти же сигналы пытаюсь подать на порт H выходит белиберда. Программа для сдвигового регистра 595. Встроенной функцией Shiftout не пользуюсь накопал код на ассемблере.
В чем ...
- Paha100
- Пн янв 27, 2014 22:22:20
- Форум: Цифровая техника
- Тема: Как получить меандр
- Ответы: 4
- Просмотры: 1393
Подскажите, как из синусоиды в диапазоне частот 1-30МГЦ получить меандр?
Сделал на КР1531ЛН1, на выходе при частоте 30МГЦ все-равно синусоида, на 2МГЦ меандр, но с ростом частоты плавно уходит в синусоиду.
- Paha100
- Вт июн 08, 2010 12:19:32
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
Итак взял вот этот файл BOOTLOADERZL12 из папки BOOT.
У меня проц мега16 на 16мгц, поэтому в файле подправил и скомпилировал.
$crystal = 16000000
$baud = 9600 'this loader uses serial com
$prog &HFF , &HEF , &HD8 , &H00 ' generated. Take care that the chip supports all fuse bytes.
$regfile = "m16def ...
- Paha100
- Вт июн 08, 2010 09:13:55
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
Я для своей платы залил в проц бутлоадер и потом грузил и BASCOMa без особых проблем.
BOOTLOADER взял из сэмплов самого BASCOMa
Через USB все шьется прекрасно, глюков не наблюдаю.
Сейчас также приспособил заливку в FASTAVR, все также быстро и удобно.
Хорошая штука BOOTLOADER
- Paha100
- Сб июн 05, 2010 23:11:10
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
Как то решил проверить в работе FASTAVR в сравнении с BASCOM
Сварганил математическое вычисление сравнил размеры кода и скорости вычислений.
В итоге BASCOM Размер кода 15% занял от общего объема
FASTAVR - 9%
Разница в скорости выполнения примерно на 30-40% быстрее в FASTAVR
Притом он еще АСМ генерит ...
- Paha100
- Пн май 24, 2010 14:27:34
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
Подскажите как усреднить показание АЦП 10 бит без потери общей скорости выполнения программы?
Т.е. имеется мультиплексор с 16 входящими каналами и 1 выходящим на АЦП меги32, Перебирая каналы считываем напряжения (всего 16) с различных датчиков.
Датчики разные, как усреднить значения?
Цикл когда ...
- Paha100
- Вс апр 25, 2010 21:19:54
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
А как это реализовать, поподробней плиз.
Прочитал на m
Config Pind.6 = Output
Config Timer1 = Counter , Edge = Falling , Prescale = 1
Stop Counter1
Set Portd.6
Waitms 1000
Reset Portd.6
Waitms 1000
Cls
Do
Counter1 = 0
Start Counter1
Waitms 25
Stop Counter1
Cls
Lcd "Counter1: " ; Counter1 ...
- Paha100
- Вс апр 25, 2010 20:48:55
- Форум: AVR
- Тема: BASCOM AVR в вопросах и ответах
- Ответы: 6077
- Просмотры: 2019521
Народ направьте на путь истинный.
Как сделать в баскоме отсчет количества пришедших импульсов за определенный промежуток времени, например за 100мс, 50мс, с помощью прерываний.
Команда WAITMS 100 дает погрешность при отсчете 100мс
Я еще новичок, вот разбираюсь, но чегото пока не дошло.
Спасибо!