色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          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)閉