第一范文网 - 专业文章范例文档资料分享平台

32位摇摇棒图纸和程序 (2)

来源:用户分享 时间:2020-06-23 本文由独木森林 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

P3M1=0x13; //0001 0011 delay(1);

P3M0=0x00;

//0000 0000 //P3.0推?高?阻哩

P3M1=0x1B;

//0001 1011

led3=1;

P1=BUFF; //01010101 1357

P3M0=0x08;

//0000 1000 //P3.3推?

高?阻哩

P3M1=0x13; //0001 0011 delay(1);

P3M0=0x00;

//0000 0000 //P3.0推?

高?阻哩

P3M1=0x1B; if((key>=j)||(keyy>=j)) BUFF=(*(text+i*4+1)); else

BUFF=(*(text+i*2+1)); led2=0; P1=~BUFF>>1;

P3M0=0x02;

//0000 0010 //P3.1推?高?阻哩

P3M1=0x19; //0001 1001

delay(1);

P3M0=0x00;

//0000 0000 //P3.0推?高?阻哩

P3M1=0x1B;

//0001 1011

led2=1;

P1=BUFF; //01010101 1357

P3M0=0x02;

//0000 0010 //P3.1推?高?阻哩

P3M1=0x19; //0001 1001

delay(1);

P3M0=0x00;

//0000 0000 //P3.0推?高?阻哩

P3M1=0x1B;

//0001

if((key>=j)||(keyy>=j)) BUFF=(*(text+i*4)); else

BUFF=(*(text+i*2)); led1=0; P1=~BUFF>>1;

P3M0=0x01;

//0000 0001 //P3.0推?

高?阻哩

输?出? P3 .1 P3.3 P3.4输?入?

输?出? P3 .0 P3.1 P3.4输?入?

输?出? P3 .1 P3.3 P3.4输?入?

输?出? P3 .0 P3.3 P3.4输?入?

输?出? P3 .1 P3.3 P3.4输?入? 输?出? P3 .0 P3.3 P3.4输?入?

输?出? P3 .1 P3.3 P3.4输?入? 输?出? P3 .1 P3.3 P3.4输?入?

} }

P3M1=0x1A;

delay(1);

P3M0=0x00;

//0001 1010

//0000 0000 //P3.0推?//0001 1011

//0000 0001 //P3.0推?//0001 1010

输?出? P3 .1 P3.3 P3.4输?入? 输?出? P3 .1 P3.3 P3.4输?入?

高?阻哩

P3M1=0x1B;

led1=1; P3M0=0x01;

P1=BUFF; //01010101 1357

高?阻哩

P3M1=0x1A;

delay(1);

/*********显?示?内ò容╕选?择?子哩 程ì序?**********/ void display(unsigned char t) {

keyy=0; switch (t){

//

过y按恪 键ó选?择?显?示?内ò容╕

case 0: {display_word(text0);}break; case 1: {display_word(text1);}break; case 2: {display_word(text2);}break; case 3: {display_word(text3);}break; case 4: {display_word(text4);}break; case 5: {display_word(text5);}break; case 6: {display_word(text6);}break; case 7: {display_word(text7);}break;

// // // // //

// case 8: {display_word(text8);}break; // case 9: {display_word(text9);}break; // case 10:{display_word(text10);}break;

//default:{display_word(text1);} }}

/*****************************************/ void display1(unsigned char y) {

switch (y){

//

过y按恪 键ó选?择?显?示?内ò容╕

case 0: {display_word(text0);}break; case 1: {display_word(text1);}break; case 2: {display_word(text2);}break; case 3: {display_word(text3);}break; case 4: {display_word(text4);}break; case 5: {display_word(text5);}break; case 6: {display_word(text6);}break; case 7: {display_word(text7);}break;

// // // // //

// case 8: {display_word(text8);}break; // case 9: {display_word(text9);}break; // case 10:{display_word(text10);}break;

} }

/***************************************/ /*********延?时骸 子哩 程ì序?**********/ void delay(unsigned char n) { }

/*********中D断?子哩 程ì序?**********/ void int0() interrupt 0 { KY=~KY; if(KY==0) { } }

void timer0() interrupt 1 { }

TimeCount++; if (DelayN!=0) DelayN--;

//定¨时骸 器e0中D断?子哩 程ì序?

DelayTime=TimeCount/1580;

TimeCount=0; //延?时骸 周ó期ò计?数簓清?零? if(key==0) { num++;

display1(keyy); //根?据Y按恪 键ó选?择?循-环·显?示?文?字? } else {

display(key); //根?据Y按恪 键ó选?择?循-环·显?示?文?字? }

//使?用?外猘部?中D断?0

for(;n>0;n--){ }

DelayN=DelayTime; while (DelayN);

//-------------------------------------------------------------------------------- //新一代 1T 8051系列 单片机内核特殊功能寄存器 C51 Core SFRs

// 7 6 5 4 3 2 1 0 Reset Value sfr ACC = 0xE0; //Accumulator 0000,0000 sfr B = 0xF0; //B Register 0000,0000

sfr PSW = 0xD0; //Program Status Word CY AC F0 RS1 RS0 OV F1 P 0000,0000

//----------------------------------- sbit CY = PSW^7; sbit AC = PSW^6; sbit F0 = PSW^5; sbit RS1 = PSW^4; sbit RS0 = PSW^3; sbit OV = PSW^2; sbit P = PSW^0;

//----------------------------------- sfr SP = 0x81; //Stack Pointer 0000,0111 sfr DPL = 0x82; //Data Pointer Low Byte 0000,0000 sfr DPH = 0x83; //Data Pointer High Byte 0000,0000

//-------------------------------------------------------------------------------- //新一代 1T 8051系列 单片机系统管理特殊功能寄存器

// 7 6 5 4 3 2 1 0 Reset Value

sfr PCON = 0x87; //Power Control SMOD SMOD0 LVDF POF GF1 GF0 PD IDL 0001,0000

// 7 6 5 4 3 2 1 0 Reset Value

sfr AUXR = 0x8E; //Auxiliary Register T0x12 T1x12 UART_M0x6 BRTR S2SMOD BRTx12 EXTRAM S1BRS 0000,0000 //-----------------------------------

sfr AUXR1 = 0xA2; //Auxiliary Register 1 - PCA_P4 SPI_P4 S2_P4 GF2 ADRJ - DPS 0000,0000 /*

PCA_P4:

0, 缺省PCA 在P1 口

1,PCA/PWM 从P1 口切换到P4 口: ECI 从P1.2 切换到P4.1 口, PCA0/PWM0 从P1.3 切换到P4.2 口

PCA1/PWM1 从P1.4 切换到P4.3 口 SPI_P4:

0, 缺省SPI 在P1 口

1,SPI 从P1 口切换到P4 口: SPICLK 从P1.7 切换到P4.3 口 MISO 从P1.6 切换到P4.2 口 MOSI 从P1.5 切换到P4.1 口 SS 从P1.4 切换到P4.0 口 S2_P4:

0, 缺省UART2 在P1 口

1,UART2 从P1 口切换到P4 口: TxD2 从P1.3 切换到P4.3 口 RxD2 从P1.2 切换到P4.2 口 GF2: 通用标志位

ADRJ:

0, 10 位A/D 转换结果的高8 位放在ADC_RES 寄存器, 低2 位放在ADC_RESL 寄存器

1,10 位A/D 转换结果的最高2 位放在ADC_RES 寄存器的低2 位, 低8 位放在ADC_RESL 寄存器

DPS: 0, 使用缺省数据指针DPTR0 1,使用另一个数据指针DPTR1 */

//-----------------------------------

sfr WAKE_CLKO = 0x8F; //附加的 SFR WAK1_CLKO /*

7 6 5 4 3 2 1 0 Reset Value

PCAWAKEUP RXD_PIN_IE T1_PIN_IE T0_PIN_IE LVD_WAKE _ T1CLKO T0CLKO 0000,0000B

b7 - PCAWAKEUP : PCA 中断可唤醒 powerdown。

b6 - RXD_PIN_IE : 当 P3.0(RXD) 下降沿置位 RI 时可唤醒 powerdown(必须打开相应中断)。

b5 - T1_PIN_IE : 当 T1 脚下降沿置位 T1 中断标志时可唤醒 powerdown(必须打开相应中断)。

b4 - T0_PIN_IE : 当 T0 脚下降沿置位 T0 中断标志时可唤醒 powerdown(必须打开相应中断)。

b3 - LVD_WAKE : 当 CMPIN 脚低电平置位 LVD 中断标志时可唤醒 powerdown(必须打开相应中断)。 b2 -

b1 - T1CLKO : 允许 T1CKO(P3.5) 脚输出 T1 溢出脉冲,Fck1 = 1/2 T1 溢出率 b0 - T0CLKO : 允许 T0CKO(P3.4) 脚输出 T0 溢出脉冲,Fck0 = 1/2 T1 溢出率 */

//-----------------------------------

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新高中教育32位摇摇棒图纸和程序 (2)全文阅读和word下载服务。

32位摇摇棒图纸和程序 (2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1097870.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top