80C51GB
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
80C51GB
Добрый вечер!
Может кто сталкивался с вопросом симуляции АЦП, прерываний и периферии Intel 80C51GB\83C51GB или 87C51GB?
А то засимулировать надо, а нечем((
Может кто сталкивался с вопросом симуляции АЦП, прерываний и периферии Intel 80C51GB\83C51GB или 87C51GB?
А то засимулировать надо, а нечем((
- Реклама
Re: 80C51GB
Посмотри, может у Кейла есть поддержка этого МК..
P.S. А накой вообще нужен симулятор.. мя вот только один раз им пользовался, когда пытался разобраться в работе чужой программы..
P.S. А накой вообще нужен симулятор.. мя вот только один раз им пользовался, когда пытался разобраться в работе чужой программы..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
Есть, но вот регистры АЦП этого контроллера я там не нашел.МитяРа писал(а):Посмотри, может у Кейла есть поддержка этого МК..
P.S. А накой вообще нужен симулятор.. мя вот только один раз им пользовался, когда пытался разобраться в работе чужой программы..
Курсовую делаю, надо же будет показать, что программа действительно работает, причем так, как нужно)
Re: 80C51GB
А они там вообще есть?seedbutcher писал(а):Есть, но вот регистры АЦП этого контроллера я там не нашел.
P.S. Посмотрел, действительно есть..
sfr ADRES0 = 0x84;
sfr ADRES1 = 0x94;
sfr ADRES2 = 0xA4;
sfr ADRES3 = 0xB4;
sfr ADRES4 = 0xC4;
sfr ADRES5 = 0xD4;
sfr ADRES6 = 0xE4;
sfr ADRES7 = 0xF4;
sfr ADCON = 0x97;
sfr ACMP = 0xC7;
Может там ещё что-то есть..
Почитай тут: http://bitsavers.org/pdf/intel/8051/MCS ... _Feb94.pdf
Последний раз редактировалось МитяРа Вт окт 18, 2011 10:24:10, всего редактировалось 1 раз.
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
Да) там встроенный 8-ми канальный АЦП
- Реклама
Re: 80C51GB
Мя дополнил предыдущий пост..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
Спасибо за ссылку! Обязательно почитаю!
Re: 80C51GB
А чем вызвана необходимость применения такой "замшелости" от Интела? Или задание на курсовик/диплом?
Хочешь на МК51 и посовременней - возьми SiLabs...
Хочешь на МК51 и посовременней - возьми SiLabs...
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
да в общем ограничение только время.
ну плюс хотелось бы, чтобы АЦП был встроенный.
а если другого производителя брать, то такой вопрос (я в МК не разбираюсь) там система команд, прерываний, вообще внутренняя организация такая же?
ну плюс хотелось бы, чтобы АЦП был встроенный.
а если другого производителя брать, то такой вопрос (я в МК не разбираюсь) там система команд, прерываний, вообще внутренняя организация такая же?
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
посмотрел С8051F02x от SiLabs в keil. наверное остановлюсь на нем, потому что можно симулировать АЦП. Осталось найти бы доку на русском, а то на английском некоторые моменты не понять) но вопрос из предыдущего поста все ещё актуален)
Re: 80C51GB
Мя книжкой пользуюсь, вот такой: http://libbib.org/?p=1782
Скачать можно тут: http://www.twirpx.com/library/comp/microcontrollers/
Вот тут из неё главки есть и примеры всякие:
http://www.silabs.ru/publication.php
http://www.silabs.ru/publication.php
Есть тема по SiLabs-у: http://radiokot.ru/forum/viewtopic.php?f=20&t=20518
Скачай SiLabs-овский IDE-шник, там есть примеры по F020-му и для АЦП - тоже.. http://www.silabs.com/products/mcu/Page ... loads.aspx
Скачать можно тут: http://www.twirpx.com/library/comp/microcontrollers/
Вот тут из неё главки есть и примеры всякие:
http://www.silabs.ru/publication.php
http://www.silabs.ru/publication.php
Есть тема по SiLabs-у: http://radiokot.ru/forum/viewtopic.php?f=20&t=20518
Скачай SiLabs-овский IDE-шник, там есть примеры по F020-му и для АЦП - тоже.. http://www.silabs.com/products/mcu/Page ... loads.aspx
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
Спасибо за информацию)
Re: 80C51GB
Да, заходи если что.. 
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
Доброе время суток)
Собственно область интересов перешла на С8051F020 и keil. Поизучав внутренности, регистры и примеры по контроллеру, решил начинать уже делать свое задание. Но. Тут меня постигла неудача в том виде, что keil отказался записывать в SFR мои значения. На выражение типа MOV OSCICN, #03H например выдает error a45: undefined symbol вроде. И так уже на несколько функций sfr, относящимся к ацп к примеру. Записать как MOV 0B2H, #03H тоже не удалось. В чем может быть проблема? Причем напрямую через интерфейс, а конкретно через окно memory все меняется, при отладке. Буду очень благодарен за помощь!
Собственно область интересов перешла на С8051F020 и keil. Поизучав внутренности, регистры и примеры по контроллеру, решил начинать уже делать свое задание. Но. Тут меня постигла неудача в том виде, что keil отказался записывать в SFR мои значения. На выражение типа MOV OSCICN, #03H например выдает error a45: undefined symbol вроде. И так уже на несколько функций sfr, относящимся к ацп к примеру. Записать как MOV 0B2H, #03H тоже не удалось. В чем может быть проблема? Причем напрямую через интерфейс, а конкретно через окно memory все меняется, при отладке. Буду очень благодарен за помощь!
Re: 80C51GB
Приведите полный текст программы.
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
ORG 30H
START:
MOV REF0CN, #00000011b
MOV OSCICN, #10000111b
IFRDY_wait:
MOV A, OSCICN
JNB ACC.4, IFRDY_wait
MOV ADC0CF, #10000000b
MOV AMX0CF, #00H
MOV AMX0SL, #00H
MOV ADC0CN, #10001101b
END
Пока это все
START:
MOV REF0CN, #00000011b
MOV OSCICN, #10000111b
IFRDY_wait:
MOV A, OSCICN
JNB ACC.4, IFRDY_wait
MOV ADC0CF, #10000000b
MOV AMX0CF, #00H
MOV AMX0SL, #00H
MOV ADC0CN, #10001101b
END
Пока это все
Re: 80C51GB
Ну а где чтение INC файла с описанием регистров МК? Вот файл под Keil.
$include (C8051FXXX.inc) ; <- подставить тип МК
CSEG AT 0
ljmp Main
ORG 0x30
USING 0
main:
MOV REF0CN, #00000011b
MOV OSCICN, #10000111b
IFRDY_wait:
MOV A, OSCICN
JNB ACC.4, IFRDY_wait
MOV ADC0CF, #10000000b
MOV AMX0CF, #00H
MOV AMX0SL, #00H
MOV ADC0CN, #10001101b
sjmp $ ; <- добавить
END
$include (C8051FXXX.inc) ; <- подставить тип МК
CSEG AT 0
ljmp Main
ORG 0x30
USING 0
main:
MOV REF0CN, #00000011b
MOV OSCICN, #10000111b
IFRDY_wait:
MOV A, OSCICN
JNB ACC.4, IFRDY_wait
MOV ADC0CF, #10000000b
MOV AMX0CF, #00H
MOV AMX0SL, #00H
MOV ADC0CN, #10001101b
sjmp $ ; <- добавить
END
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
Спасибо!
не знал, что его надо, т.к. до этого пользовался только Franklin, а там такого не было
Только видимо я совсем дуб в этом деле)
На Ваш код Keil выдает:
C8051F020.inc(15): error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL
не знал, что его надо, т.к. до этого пользовался только Franklin, а там такого не было
Только видимо я совсем дуб в этом деле)
На Ваш код Keil выдает:
C8051F020.inc(15): error A10: ATTEMPT TO DEFINE AN ALREADY DEFINED SYMBOL
Последний раз редактировалось seedbutcher Вт ноя 01, 2011 08:05:26, всего редактировалось 1 раз.
Re: 80C51GB
Это просто разные модели /режимы/ для ассемблера..
Сам пользуюсь Металинк-Ассемблером в режиме "Смолл", без описаний сегментов, а в другом режиме он и сегменты может..
Файл с описанием регистров МК-шника во всех ассемблерах присутствует..
Сам пользуюсь Металинк-Ассемблером в режиме "Смолл", без описаний сегментов, а в другом режиме он и сегменты может..
Файл с описанием регистров МК-шника во всех ассемблерах присутствует..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
- seedbutcher
- Первый раз сказал Мяу!
- Сообщения: 32
- Зарегистрирован: Пн окт 10, 2011 19:47:06
- Откуда: Екатеринбург
Re: 80C51GB
МитяРа писал(а):Это просто разные модели /режимы/ для ассемблера..
Сам пользуюсь Металинк-Ассемблером в режиме "Смолл", без описаний сегментов, а в другом режиме он и сегменты может..
Файл с описанием регистров МК-шника во всех ассемблерах присутствует..
что же тогда сделать, чтоб он правильно эти спец регистры определил?


