新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > AVR單片機(jī)Atmega128外擴(kuò)RAM

        AVR單片機(jī)Atmega128外擴(kuò)RAM

        作者: 時間:2013-12-12 來源:網(wǎng)絡(luò) 收藏


        為保證數(shù)據(jù)采集的準(zhǔn)確性和適時性,需要精確確定采樣時間,做到采集和處理兩不誤。由于溫度信號變化比較慢,而且比較有線性規(guī)律。所以設(shè)定通道0采集振動信號,通道1采集溫度信號,振動信號的采樣率為溫度信號的50倍。即先進(jìn)行50次振動信號采集后,切換通道,進(jìn)行溫度信號的采集,之后再切換到振動采集通道。對ADC轉(zhuǎn)換啟動噪聲抑制功能,采用中斷編程。ATmega128采用外部16MHz時鐘。(由于Can已經(jīng)是一種比較成熟和常用的總線技術(shù),在此不做過多介紹)

        AVR單片機(jī)Atmega128外擴(kuò)RAM

        硬件連接和普通的51單片機(jī)外擴(kuò)是一樣的。

        AVR單片機(jī)Atmega128外擴(kuò)RAM

        內(nèi)存分布。

        以下是測試程序:

        // Target : ATMEGA128
        // Crystal : 7.3728Mhz
        // Modifed By : Moxudong
        // Date : 2010.03

        #includeavr/io.h>
        #includeutil/delay.h>
        #include avr/interrupt.h> //中斷函數(shù)頭文件

        #includestdio.h>
        #includestring.h>

        //PG0 0x65
        #define WRL (PORTG=PORTG0XFE)
        #define WRH (PORTG=PORTG|0X01)

        //PG1
        #define RDL (PORTG=PORTG0XFD)
        #define RDH (PORTG=PORTG|0X02)

        //PG2
        #define ALEL (PORTG=PORTG0XFB)
        #define ALEH (PORTG=PORTG|0X04)

        //MCU時鐘頻率
        #undef F_CPU
        //#define F_CPU 7372800UL
        //默認(rèn)的系統(tǒng)BAUD
        #define baud 115200
        //#define fosc 7372800UL //晶振7.3728MHZ
        #define fosc 16000000UL

        //#define baud 9600//波特率

        #define MCUBAUD9600 1

        //declare memory mapped variables
        //#define txbuf1_head 0x1100

        //extern unsigned char txbuf1[256];
        #define ext_PORT1 ((volatile unsigned char *)0x1100)
        unsigned char *p=(unsigned char *)ext_PORT1;
        unsigned char testramtable[4]={0x00,0x55,0xaa,0x00};

        void Delay1ms(void)
        {
        unsigned int i;
        for(i=0;i=(unsigned int)(16*143-2);i++);
        }

        void Delayxms(unsigned char ms)
        {
        unsigned char i;
        for(i=0;i=ms;i++)
        Delay1ms();
        }



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 黎平县| 桓台县| 景谷| 青州市| 大新县| 永清县| 佛坪县| 绥中县| 郑州市| 高州市| 耿马| 北川| 三河市| 仙居县| 民县| 永康市| 汪清县| 博野县| 藁城市| 墨江| 梓潼县| 上饶市| 淳安县| 木里| 竹山县| 运城市| 阿克苏市| 亳州市| 丘北县| 安义县| 马公市| 东辽县| 日土县| 乌拉特前旗| 黔南| 承德市| 舒兰市| 南靖县| 芦溪县| 韶关市| 弥渡县|