| Автор |
Съобщение |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
 8051 (AT89C51) за начинаещ...
Е време ми е да се сблъскам с 8051 based контролерите, реших да почна от Atmel-ския AT89C51, компилатора ми е KEIL PK51, дотук имам вече един BlinkLED, поне това успях да напиша от изчетения datasheet на този контролер. Иска ми се обаче да наблегна първо върху ASM, тъй като не съм запознат толкова с Intel-ския асемблер (макар че съм написал доста програми за PC на ASM)  Дайте някаква документация или описание на инструкциите 
|
| Пет Яну 20, 2006 12:31 am |
|
 |
|
nickich
Ранг: Почетен член
Регистриран на: Вто Ное 01, 2005 10:23 am Мнения: 704 Местоположение: Limerick, Ireland
|
_________________ "640 К са достатъчни на всеки за всичко." Бил Гейтс
|
| Пет Яну 20, 2006 10:37 am |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Благодаря @nikich, на мен ми беше повече интересно дали Instruction Set-a на микроконтролер 8051 е същия както на процесора на PC-то ми 
|
| Пет Яну 20, 2006 11:40 am |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
|
| Пет Яну 20, 2006 11:50 am |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Ей това исках да чуя @bateAz  Щото гледам из нета и не мога да зацепя аз RISC процесор ли държа в ръката си или.... 
|
| Пет Яну 20, 2006 11:58 am |
|
 |
|
nickich
Ранг: Почетен член
Регистриран на: Вто Ное 01, 2005 10:23 am Мнения: 704 Местоположение: Limerick, Ireland
|
 или....
Нищо общо.
_________________ "640 К са достатъчни на всеки за всичко." Бил Гейтс
|
| Пет Яну 20, 2006 12:14 pm |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Ще ме извинявате, доста съм невеж в област 8051, уча се на всичко сам и препочитам да се засрамя да питам отколкото да се засрамя че незнам 
|
| Пет Яну 20, 2006 12:24 pm |
|
 |
|
nickich
Ранг: Почетен член
Регистриран на: Вто Ное 01, 2005 10:23 am Мнения: 704 Местоположение: Limerick, Ireland
|
Е, аз пък съм невеж в асм за ПЦ
Няма нищо срамно в това да питаш. Все пак никой не може да знае всичко. А и нали е за това този форум.
Просто имах в предвид, че инструкциите на 8051 са доста различни от тези на ПЦ-то. Почти не съм писал на асемблер за ПЦ, но съм понаписал някой неща за '51, но от 'птичи поглед' изглеждат доста различни.
Нали все пак ПЦ-то е CISC, a 8051 се води RISC  .
_________________ "640 К са достатъчни на всеки за всичко." Бил Гейтс
|
| Пет Яну 20, 2006 12:49 pm |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
Хищник, 8051 е класиката в микроконтролерите. Все пак, има определени "странности", с който вероятно вече си се запознал.
1. 3 ( три ) адресни пространства.
2. Набор от инструкции, много подходящ за реализация на булеви функции.
3. Набор от инструкции, много неефективен за работа с големи обеми от данни.
4. Липсват някой често ползвани команди : например събиране БЕЗ пренос, сравнение и др. Но пък има "декремент и преход, ако не е нула", "сравнение и преход, ако.." и др.
Изобщо, странна идеология, която се среща рядко. Това е по повод ядрото му. За периферията - това зависи от производителя. Виждал съм и замо голо ядро с един-два порта, виждал съм и 168 пинoво чудовище с USB2.0 HOST ctrl. Атмели не съм ползвал.
Това ядро все още е едно от най-разпространените, и все още се разработват нови контролери с него. Така че, има хляб в него. За съжаление, ARM го измества и това е неизбежно.
|
| Пет Яну 20, 2006 12:49 pm |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
ARM си е ARM, както се казваше някъде " няма да разбереш къде отиваш ако не знаеш къде си бил"
Уча този процесор точно заради голямото му разпространение, вече вдянах няколко недостатъка, например липсата на TRIS регистър, но пък в някой модели срещнах такъв PX DIR. Благодаря за помоща която ми оказвате, разчел съм се в момента, ако имам други неяснотии ще попитам 
|
| Пет Яну 20, 2006 12:57 pm |
|
 |
|
teglicho
Ранг: Ориентиран
Регистриран на: Сря Фев 09, 2005 11:08 am Мнения: 245 Местоположение: Blagoevgrad
|
|
| Пет Яну 20, 2006 1:09 pm |
|
 |
|
mitko
Ранг: Минаващ
Регистриран на: Пет Фев 10, 2006 2:10 am Мнения: 19 Местоположение: Sofia
|
Lipsata na TRIS register eeee takova predimstvo ....... che kojto go e polzval e razbral kade e istinata ....
za kakvo ti e TRIS register ?? samo da go shtrakash li ? ..... kade ste ti potrjabva takova neshto ? v mnopgo malko sluchai kogato se slagat razni analogovi prilojenija na porta .... ama togava povecheto procesori i s TRIS registar ne varshat rabota zashtoto ne sa im simetrichni buferite kam GND i VCC.
abeeee tozi procesor e mnogo mislen i mnogo dobre izpipan ibstruction set. A za golemi masivi ot danni ne e mnogo efektiven am ima trikove s koito mohe da se okaje che e po-efektiven i ot dosta drugi praveni da rabotjat s golemi bazi danno
|
| Пет Фев 10, 2006 2:48 am |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Мога да кажа, че схванах как се пише за 8051 след като написах I2C, SPI, LCD, RS232 и още няколко библиотеки (RTC например), но не съм доволен колко е тромав...имам в предвид MIPS/mA е висок...но пък смятам да го ползвам за в бъдеще 
|
| Пет Фев 10, 2006 2:27 pm |
|
 |
|
forest_gump
Ранг: Професионалист
Регистриран на: Сря Окт 13, 2004 11:24 pm Мнения: 500 Местоположение: Стара Загора
|
8051-цата има убийствена система за прекъсвания, която компенсира неговата тромавост и е много удобна за многозадачен режим. Контролера е мислен като архитектура и инструкции да бъде много гъвкав за логичният подход за решаване на алгоритмите, за отговорни задачи и сериозни приложения е перфектен, недостатъка е скороста която варира в зависимост от условията на програмата, точно затова е насреща перфектната система за прекъсване. Ако не беше толкова усложнено програмирането им може би сега щяха да са много по разспространени...!
|
| Вто Фев 14, 2006 12:51 pm |
|
 |
|
asp
Ранг: Популярен
Регистриран на: Сря Фев 22, 2006 6:27 pm Мнения: 376 Местоположение: plovdiv
|
добре де АТ89s52 не е ли с това ядро за която говорим. аз мисля, че да. Там няма проблеми с програмирането не по трудно е от АВР или друг върхуплаткосерийнопрограмируем чип. Бучкаш и тръгва. Аз работя с този чип. Даже не е и бърз 20 тина мегахерца разделени на 12 му е вътрешният клок. Но е приличен само даташиитовете могат да ми скъсат нервичките.
|
| Чет Фев 23, 2006 10:54 pm |
|
|