欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5241|回復: 3
打印 上一主題 下一主題
收起左側

51單片機程序轉AVR的方法

[復制鏈接]
跳轉到指定樓層
樓主
ID:296052 發表于 2018-3-23 16:54 來自觸屏版 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
將 C51 向 ICCAVR的轉換進行一次總結
1、 頭文件
對C51中定義寄存器的頭文件如 reg51.h at89x51.h等替換成相應的 AVR頭文件 如 io8515.h io2313.h等
2、 中斷處理函數
在 C51 中以 interrupt 關鍵字來說明某一個函數為中斷處理函數 在 ICCVAR 中可采用#pragma interrupt_handler預處理命令在程序開始處聲明 具體用法如下:
#pragma interrupt_handler <中斷處理函數名> <中斷向量號>
注意 對原 C51 源程序中的 interrupt 和 using關鍵字應當刪除
3 、對 C51 中的 bit 和 sbit 數據類型的處理
在 ICCAVR中不支持 bit 和 sbit數據類型 對這兩種類型可用 unsigned char來代替對有關位運算用標準 C 的位運算功能進行處理 也可采取在線匯編處理
4 、對中斷系統 定時器初始化
需重新根據相應控制寄存器的功能給其賦值 方法與 C51 相同 具體如下 對 MCS51中 TMOD TCON的處理改為對 AVR的 TCCR0 TCCR1A TCCR1B TIFR的處理
對 MCS51 中 IE IP的處理改為對 AVR中 GIMSK TIMSK MCUCR SREG
的處理對 MCS51 中 IE IP的處理改為對 AVR中 GIMSK TIMSK MCUCR SREG的處理
5 將原 C51中有關對看門狗電路 外部 EEPROM的處理改為對 AVR芯片內部看門狗電路 內部 EEPROM的處理
6 、對 MCS51UART 的初始化改為對 UCR和 UBRR和被始化
7、 如果使用片外 SRAM 應當對 MCUCR初始化如果有引腳作為輸出引腳使應當對其方向寄存器進行初始化
8、 對 C51中符合 ANSI標準的 C語言 原則上不需要進行修改 除非為了程序結構的優化

發自我的華為手機

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:33897 發表于 2018-3-28 10:39 | 只看該作者
謝謝分享  樓主辛苦了
回復

使用道具 舉報

板凳
ID:380304 發表于 2018-7-28 21:11 | 只看該作者
新手的學習,謝謝分享
回復

使用道具 舉報

地板
ID:176854 發表于 2018-8-10 17:08 | 只看該作者
學習一下
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表