實驗程序:/*******************************led.c*********************************/#include"stm32f4xx.h"//在SYSTEM目錄下可以找到,把ST官方的部分庫抽取出來,組成了一個SYSTEM目錄#include"sys.h"voidLED_Ini
名稱:51單片機驅動蜂鳴器發(fā)聲平臺:Keil 4, Ly-51S學習板內容:模擬報警聲,如鬧鐘 滴 滴 滴 滴-----------------------------------------------------*/ #include sbit SPK = P1^2; void delay_2us(unsigned char
第一階段 是先瀏覽教科書里的硬件部分,大至了解單片機的硬件結構。如 ROM、RAM、地址、I/O口等,以及看一些廠家的MCU資料(Data Sheet),來加強MCU所提供各項資源的印象?! 〉诙A段 就是了解二進位數
DMA可以認為連接兩個“地址”數據通道。DMA共享系統總線,不占用CPU,所以可以實現快速數據傳輸。這里以DMA連接存儲器(數組)和串口(USART1->DR)為例。1 void DMA_init(void)2 {4 RCC->AHBENR|=1DR;//讀外設串口數據
方式0應用 通過設置TMOD寄存器中的M1M0位00選擇定時器方式0,方式0的計數位數是13位,對T0來說,TL0寄存器的低5位(高3位未用)和TH0寄存器的8位組成。TL0的低5位溢出時向TH0進位,TH0溢出時,置位TCON中的TF
DMA,全稱為:DirectMemoryAccess,即直接存儲器訪問。DMA傳輸方式無需CPU直接控制傳輸,也沒有中斷處理方式那樣保留現場和恢復現場的過程,通過硬件為RAM與I/O設備開辟一條直接傳送數據的通路,能使CPU的效率大為提
生活上有很多東西都搭載著單片機而進行工作的,而且有相當一部分的設備、儀器、產品都是靠蓄電池來提供電源的,往往這些靠蓄電池供電的設備、儀器、產品都能夠用上一大段時間。例如我們經常接觸到的遙控器,假若MCU一
想搞清楚PLC與單片機有什么不同,在網上搜了許多,看得頭都大了,還是一團霧水。最后把其中說到點子上的一些句子,綜合起來認真分析總結,本人認為PLC與單片機的差別應該是:1.PLC是應用單片機構成的比較成熟的控制系
#includesbit P1_1 = P1^1;//定時器的初始化void delay_1ms(void){TMOD = 0x01;//采用16位計數器TH0= 0xFC;TL0= 0x18;ET0= 0;TR0= 1;//開啟while(!TF0);TF0= 0;TR0 = 0;}void main(void){while(1){P1_1 = 1;delay_1m
I2C總線是Philips公司提出的一種集成電路IC器件之間相連接的總線協議,其目的是使電子系統(不只 限于單片機系統)各個IC器件之間的連線變得容易。因為使用傳統的并行總線在IC器件之間連接,往往會使得IC之間連線較多
串口xmodem的移植比較簡單,參考ymodem協議就行。實驗環(huán)境:Linux ubuntu 9.10(來自韋東山老師光盤自帶虛擬機)開發(fā)板:Jz2440(ARM9S3C2440NANDK9F2G08SDRAMK4S561632 * 2)U-Boot: u-boot-1.1.6燒寫工具: OpenJt
#include"1602.h"#include"18b20.h"#include"main.h"__CONFIG(0X0B31);main(){charmsg[2][16]={"Temperature:",".C"};delay_us2(40,40);delay_us2(100,200);initial();while(1){start_convert();change
一直都是用STM32做項目中的主控芯片,在編程的時候,之前一直忽視了一個問題,那就是寄存器的位置是如何定義的,為什么用一個USART1->CR操作就能夠給這個CR寄存器賦值?其實這是一個比較底層的問題,不懂這方面的知識
三相交流異步電動機的節(jié)電器節(jié)電保護一直是電機領域研究的熱點,特別是近幾年來全國出現電力供應緊張的局面,使得對交流異步電動機的節(jié)能設備的研究和推廣更為迫切。三相異步電動機由于結構簡單,智能節(jié)電器使用方便
Flash的操作:stm32大容量的flash不僅用來存儲程序代碼,還可用來存儲一些數據和系統用戶的參數。程序的代碼一般保存在從flash開始區(qū)域,剩下的區(qū)域空間大小可以用來存儲用戶數據(大小取決于Flash的大小和代碼占用空