国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

51單片機(jī)的C語言基本用法

2020-07-16 12:20 作者:Joker大金寶  | 我要投稿

這是之前的視頻——51單片機(jī)快速入門(https://www.bilibili.com/video/BV1Dv411B7Pw)中的TXT文件,這里發(fā)一下,方便大家來找。

視頻中開發(fā)板的程序資料:http://www.prechin.net/forum.php?mod=viewthread&tid=35264&extra=

STC官網(wǎng):http://www.stcmcudata.com/

MDK5(51版)https://www.keil.com/c51/demo/eval/c51.htm#/DOWNLOAD

51單片機(jī)概述:

創(chuàng)建工程的過程

MDK5(51版)

燒錄程序的過程

ch340g usb轉(zhuǎn)串口

stc-isp軟件 pz-isp軟件


單片機(jī)的手冊


51單片機(jī)程序的編寫方法

匯編語言(了解即可)

org 0000h

MOV a,#2fh

sjmp $

仿真寄存器的值


C語言

引用頭文件(注意格式規(guī)范)

#include <reg51.h>

某些增強(qiáng)型單片機(jī)需要自己尋找頭文件,keil中沒有提供

學(xué)會查看頭文件的內(nèi)容

定義引腳

sbit P10=P1^0;

直接對IO口進(jìn)行操作

P1=0xff;


粗略的延遲函數(shù)

基于12M晶振

us延遲

void delay_us(int n_us)

{

?int j,k;

?for(j=0;j<n_us;j++)

for(k=0;k<1;k++);

}

ms延遲

void delay_ms(unsigned int a)

{

int q;

while(a--){

for(q=400;q>0;q--);

}

}


led燈的驅(qū)動

根據(jù)電路判斷寫1還是寫0

仿真方法

PORT2.7

流水燈

P2=0xfe;

循環(huán)中寫

P2=P2<<1;


開關(guān)檢測

先寫1,后讀取

注意分析電路


數(shù)碼管的驅(qū)動原理

字形碼

? 共陰? ? 共陽

0? 3F? ? ? C0

1? 06? ? ? F9

2? 5B? ? ? A4

3? 4F? ? ? B0

4? 66? ? ? 99

5? 6D? ? ?92

6? 7D? ? ?82

7? 07? ? ?F8

8? 7F? ? ?80

9? 6F? ? ?90

A? 77? ? ?88

B? 7C? ? ?83

C? 39? ? ?C6

D? 5E? ? ?A1

E? ?79? ? ?86

F? ?71? ? ?8E

H? 76? ? ?89

P? 73? ? ?8C


顯示一個數(shù)字

P1=0xf1;

P0=0x3f;


掃描顯示

寫入ROM

unsigned char code DIG_PLACE[4]={0xf1,0xf2,0xf4,0xf8};

unsigned char code DIG_CODE[17] = {

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};


P1=DIG_PLACE[0];

P0=DIG_CODE[4];

delay_us(1);

P1=DIG_PLACE[1];

P0=DIG_CODE[3];

delay_us(1);

P1=DIG_PLACE[2];

P0=DIG_CODE[2];

delay_us(1);

P1=DIG_PLACE[3];

P0=DIG_CODE[1];

delay_us(1);


還有一些專用的數(shù)據(jù)管驅(qū)動芯片


LCD顯示屏(學(xué)會調(diào)用廠家封裝的庫)

用到的文件移植到自己程序里


中斷與定時器

概念

51的定時器

配置

num=65536-nus/1;

TMOD=0x01;

TH0=num/256;

TL0=num%256;

th0=TH0;

tl0=TL0;

EA=1;

ET0=1;

//PT0=1;

TR0=1;

中斷服務(wù)函數(shù)

TIMER0()interrupt 1

{

TH0=th0;

TL0=tl0;


}


外部中斷

P3.2? ?INT0

P3.3? ?INT1

配置

EA=1;

EX0=1;

//PX0=1;

IT0=1;

中斷服務(wù)函數(shù)

INT0_()interrupt 0

{

//IE0=0;

}


51單片機(jī)的C語言基本用法的評論 (共 條)

分享到微博請遵守國家法律
普陀区| 贡觉县| 江城| 广昌县| 南安市| 福安市| 合江县| 肇庆市| 乌什县| 马关县| 开阳县| 临湘市| 江西省| 枣庄市| 五寨县| 通江县| 嫩江县| 朝阳市| 正蓝旗| 五常市| 榕江县| 静安区| 定结县| 芜湖市| 泸西县| 深水埗区| 左贡县| 泰和县| 西乡县| 驻马店市| 武邑县| 河东区| 岢岚县| 宜黄县| 湖北省| 榆中县| 文化| 南京市| 鄂伦春自治旗| 哈密市| 丰台区|