摘要:當(dāng)前的電動小車基本上采取的是基于純硬件電路的一種開環(huán)控制方法,具有直線行駛、前進(jìn)、后退、轉(zhuǎn)彎、停車等基本功能,但在某些特殊場合下卻不能采集到有用信息。文章正是在這種需要之下,以ATmega16單片機(jī)為控制核心,用RF2401無線收發(fā)模塊進(jìn)行遙控通信,用DS18B20進(jìn)行溫度檢測,同時采用超聲波等傳感器材檢測信號和障礙物,最后充分利用單片機(jī)的串口資源和運(yùn)算、處理能力,開發(fā)設(shè)計了一種智能控制系統(tǒng),從而實現(xiàn)了小車的測溫、躲避障礙物等功能。
1)那就是在之前的介紹中說過,在說一遍~~主機(jī)和從機(jī)的兩個移位寄存器可以被認(rèn)為是一個公開的16位環(huán)形移位寄存器,當(dāng)數(shù)據(jù)從主機(jī)移向從機(jī)時,同時從機(jī)餓數(shù)據(jù)也向相反的放向移向主機(jī)。這就意味著在一個以為周期內(nèi),主機(jī)
五、ATMEGA16的USART與PC機(jī)串行通信五—(02)、PC機(jī)發(fā)送字符給單片機(jī),然后用液晶顯示發(fā)送的字符~~~這章節(jié)也是相對挺簡單的~~直接上圖片吧~~基本上就這么點吧~~然后就是程序了,這里我只是粘貼一下重要的程序~~,有
九、ATMEGA16的模數(shù)轉(zhuǎn)換器九—(01)、ATMEGA16的模數(shù)轉(zhuǎn)換器的介紹1、介紹1)特點:? 10 位 精度? 0.5 LSB 的非線性度? ± 2 LSB 的絕對精度? 65 - 260 μs 的轉(zhuǎn)換時間? 最高分辨率時采樣率高達(dá)15 kSPS? 8 路復(fù)用的單
五、ATMEGA16的USART與PC機(jī)串行通信五—(03)、PC機(jī)發(fā)送控制指令控制單片機(jī)工作~(這個控制還是比較簡單的~~,不過個人認(rèn)為還是有水平的~)還是先上圖片~~,然后程序,程序師模塊化的,我盡量貼全點~~然后就是程序了
三、ATMEGA16驅(qū)動16*2點陣字符液晶三—(01)、ATMEGA16驅(qū)動16*2點陣字符液晶這篇文章只是簡單的驅(qū)動并讓1602顯示,并沒有用到讀數(shù)據(jù)和讀狀態(tài)的部分,也沒有用到讀寫檢測(要是感興趣的話還是寫寫這里吧)1、那就是用
四、ATMEGA16的定時/計數(shù)器四—(01)、四位顯示秒表試驗首先懷念一下咱們的體育課,再體育課或者田徑比賽的時候,老師會經(jīng)常使用秒表來記錄同學(xué)們的成績。在此,來進(jìn)行一個秒表的設(shè)計。(說實話,這個秒表真的太貴了
//1號主機(jī):#include #include#include#include #defineucharunsigned char#defineSTATUS(TWSR&0xf8)#defineSLA_W0x32#defineSLA_R0x33#defineSLAVER_ADDRESS0x32#defineSTART0x08#defineRE_START0x10#defineMT_SLA_W
在設(shè)置之前呢,我得把ATMEGA16里面的datasheet里面的資料說說,當(dāng)然是關(guān)于系統(tǒng)時鐘和時鐘選項的一、系統(tǒng)時鐘及時鐘選項(這里主要是介紹原理,三里面會介紹如何設(shè)置,其實你會了一,那后面的二和三就相當(dāng)簡單了~~你懂
//------------------------------------------------------------------------------//ATMEGA16與PC機(jī)的通信實驗1//PC機(jī)發(fā)送一個字符給單片機(jī),單片機(jī)收到后既在發(fā)光二極管進(jìn)行顯示,同時將其回傳給PC//單片機(jī)的發(fā)送
一、ATMEGA16的I\\0端口的使用:(只有一個實驗,下面的部分每個小節(jié)可能有幾個實驗驗證,你懂得)一—(01)、)—使用4*4行列式按鍵開關(guān)的使用I/O端口介紹:直接一個圖就哦了,因為根本沒什么,就是控制寄存器(這里
#include #include #include interrupt.h>void port_init(void){ DDRB = 0xff; PORTB = 0xff; DDRD = 0x00; PORTD |= (1
/*********************************************File name : USART.c Chip type : ATmega16 Program type : Application Clock frequency : 4.000000 MHz Memory model : Small External SRAM size : 0 Data
/*****************************************************File name : AD_onchip.c Chip type : ATmega16L Program type : Application Clock frequency : 4.000000 MHz Memory model : Small External SRAM si
/************************************************** EEPROM讀寫操作 晶振:內(nèi)部 8M***************************************************/#include#include#define uchar unsigned char#define uint unsigned int
五、ATMEGA16的USART與PC機(jī)串行通信五—(01)、PC機(jī)發(fā)送字符給單片機(jī)控制發(fā)光管亮,同時將其傳回PC機(jī),其中單片機(jī)的發(fā)送和接收都采用查詢方式(下一篇中有例程~)1、USART的主要特點通用同步和異步串行接收器和轉(zhuǎn)發(fā)
四、ATMEGA16的定時/計數(shù)器四—(02)、T/C1定時器A/B比較匹配中斷和溢出中斷實現(xiàn)LED亮度自動調(diào)節(jié)啊~~~~~圖~~~~~這里沒有什么要注意的,只要理解并會控制T/C1的兩個比較匹配中斷A/B和溢出中斷,That's all ~~然后
下面就總結(jié)一下AVR單片機(jī)ATmega16的主要特點:(注: 括號內(nèi)有紅色 *x*符號的表示文章下方會有解釋/擴(kuò)展)1) 采用 RISC 結(jié)構(gòu)的AVR內(nèi)核單片機(jī).131 條機(jī)器指令, 大多數(shù)指令為單個系統(tǒng)時鐘周期執(zhí)行的指令;32 個 8 位通用工作
十、ATMEGA16的同步串行接口SPI十—(03)、ATMEGA16的同步串行接口SPI的串行通訊實驗—通過效率最高的中斷法~~然后就是程序了~~IAR10_2_M.c//-------------------------------------------------------------------
本程序參照馬潮mega128的編寫??芍С?85或232接口。變異軟件ICCAVR,上位機(jī)軟件應(yīng)用超級終端或avrubd等,Xmodem,9600,8,1,n#include #include #include #define SPM_PAGESIZE 128 //M16的一個Flash頁為128字節(jié)(