proteus keypad使用方法
鈥?0銆並eyPad
鐭╅樀閿洏锛?a href="https://so.csdn.net/so/search?q=Proteus&spm=1001.2101.3001.7020" target="_blank" class="hl hl-1" data-report-click="{"spm":"1001.2101.3001.7020","dest":"https://so.csdn.net/so/search?q=Proteus&spm=1001.2101.3001.7020","extra":"{\"searchword\":\"Proteus\"}"}" data-tit="Proteus" data-pretit="proteus">Proteus鎻愪緵浜嗗绉嶇煩闃甸敭鐩橈紝鏈夎绠楀櫒锛岀數璇濇満锛屼互鍙婅嚜瀹氫箟鐨勫竷灞€锛屽皝瑁呭涓寜閿洿褰㈣薄鐢熷姩銆?/p>
鍐嶈鐭╅樀閿洏鐨勫師鐞嗗墠锛岃繕鏄璁蹭负浠€涔堢敤鐭╅樀閿洏锛?/p>
褰撴寜閿暟閲忓緢澶氭椂锛屼负浜嗚妭绾O鐨勮祫婧愶紝閫氬父浼氬皢鎸夐敭鎺掑垪鎴愮煩闃靛舰寮忥紝姣忎釜鎸夐敭閫氳繃琛屽拰鍒楁潵璇嗗埆锛屼緥濡?涓狪O鍙瘑鍒?*4=16涓寜閿紝姣旂洿鎺ラ┍鍔?涓寜閿浜嗕竴鍊嶃€?/p>
鍘熺悊鈥斺€旈珮浣庣數骞崇炕杞硶锛氾紙浠A0-PA7涓轰緥锛孭A0-3鏄锛孭A4-7鏄垪锛?/p>
脴榛樿鐘舵€丳A0-7鍏ㄩ儴杈撳嚭楂樼數骞?,锛?/p>
脴鐒跺悗琛孭A0-PA3璁句负杈撳嚭锛屼笖涓?锛孭A4-PA7璁句负杈撳叆锛岀劧鍚庢娴婸A4-7寮曡剼鐢靛钩鐨勫彉鍖栵紝渚嬪+鎸夐敭鎸変笅鍚庯紝PA7=PA3=0锛屽叾浣欎笉鍙橈紝閭d箞PA7-PA0鐢靛钩涓猴細01110000锛?/p>
脴鎺ョ潃鍒桺A4-PA7璁句负杈撳嚭锛屼笖涓?锛孭A0-PA3璁句负杈撳叆锛岀劧鍚庢娴婸A0-3寮曡剼鐢靛钩鐨勫彉鍖栵紝渚嬪+鎸夐敭鎸変笅鍚庯紝PA3=PA7=0锛屽叾浣欎笉鍙橈紝閭d箞PA7-PA0鐢靛钩涓猴細00000111锛?/p>
脴鏈€鍚庡皢琛屽垪鎵弿缁撴灉浣嶆垨锛屽嵆0111000|00001110=01110111=0x77锛岃繖鏍峰氨鍙互鍖哄垎16涓寜閿殑閿€间簡锛堝綋娌℃湁鎸夐敭妫€娴嬪埌鏃讹紝榛樿鍏?锛夈€?/p>
鍏蜂綋缂栫▼濡備笅锛?/p>
鍔熻兘锛氱煩闃甸敭鐩?*4鎵弿锛孡CD1602鏄剧ず瀵瑰簲閿€硷紝鍙互缁х画娣诲姞涓€浜涢€昏緫鍑芥暟鏋勬垚璁$畻鍣ㄥ姛鑳姐€?/p>
浠跨湡瑙嗛
- /**
- ******************************************************************************
- * @file main.c
- * @author Alex鈥斺€斿皬鐧?/div>
- * @version V1.0
- * @date 2021.1.20
- * @brief 渚嬬▼鍔熻兘缂栧啓
- * @store Proteus浠跨湡搴楀瓙鈥斺€斿叕浼楀彿
- * @Link https://shop484534014.taobao.com/
- * @Email 844545015@qq.com
- ******************************************************************************
- * @attention All Rights Reserved
- **/
- 鈥?/div>
- #include <main.h>
- void main(void)
- {
- uint8_t i = 0;
- KeyPad.Init();
- LCD.LCD1602_Init();
- 鈥?/div>
- while(1)
- {
- if(KeyPad.KeyValue() != 0xff) //鎸夐敭妫€娴?/div>
- {
- Delay.Delay_ms(120); //娑堟姈
- if(KeyPad.KeyValue() != 0xff)
- {
- LCD.LCD1602_WriteChar(0,i++,KeyPad.KeyValue());
- if(i > 16)i = 0;
- }
- }
- }
- }
濡傞渶Proteus鍜孖AR瀹夎鍖呬互鍙夾VR缂栫▼鍙傝€冩墜鍐岋紝璇峰叧娉ㄥ叕浼楀彿锛?/p>
Proteus浠跨湡搴楀瓙
鍙€氳繃鏌ョ湅鍘嗗彶璁板綍锛屾煡鐪嬫簮鐮佸拰浠跨湡宸ョ▼
锛堣嫢闇€Proteus鍜孖AR瀹夎鍖呬互鍙夾VR缂栫▼鍙傝€冩墜鍐岋紝鍚庡彴鍥炲锛?strong>AVR锛涜嫢闇€鍏跺畠璁捐锛屽悗鍙板洖澶嶏細AVR璁捐锛?/p>
馃帇1. 鍩烘搷
馃尶1.1 Proteus姒傚喌
- 鑻卞浗Lab Center Electronics鍏徃鍑虹増鐨?strong>EDA宸ュ叿杞欢銆?/li>
- 涓嶄粎鏈夊叾瀹僂DA宸ュ叿杞欢鐨勪豢鐪熷姛鑳斤紝杩樿兘浠跨湡鍗曠墖鏈哄強澶栧洿鍣ㄤ欢銆?/li>
- 鏄瘮杈冨ソ鐨勪豢鐪熷崟鐗囨満鍙婂鍥村櫒浠剁殑宸ュ叿銆?/li>
- 浠庡師鐞嗗浘甯冨浘銆佷唬鐮佽皟璇曞埌鍗曠墖鏈轰笌澶栧洿鐢佃矾鍗忓悓浠跨湡锛屼竴閿垏鎹㈠埌PCB璁捐锛岀湡姝e疄鐜颁簡浠庢蹇靛埌浜у搧鐨勫畬鏁磋璁°€?/li>
- 涓栫晫涓婂敮涓€灏嗙數璺豢鐪熻蒋浠躲€丳CB璁捐杞欢鍜岃櫄鎷熸ā鍨嬩豢鐪熻蒋浠朵笁鍚堜竴鐨勮璁″钩鍙般€?/li>
- 鍏跺鐞嗗櫒妯″瀷鏀寔8051銆丄VR銆丄RM銆?086绛夛紝骞舵寔缁鍔犲叾浠栫郴鍒楀鐞嗗櫒妯″瀷銆?/li>
- 鍦ㄧ紪璇戞柟闈紝瀹冩敮鎸両AR銆並eil鍜孧ATLAB绛夊绉嶇紪璇戝櫒銆?/li>
馃尶1.2 鐩稿叧涔︾睄
- 鑼冩捣缁嶏紝鏉庢柟鍥瓑缂栬憲. 闆惰捣鐐瑰Proteus鍗曠墖鏈轰豢鐪熸妧鏈痆M]. 鍖椾含锛氭満姊板伐涓氬嚭鐗堢ぞ, 2012.02.
- 寰愪寒缂? 楂樼瓑鑱屼笟鏁欒偛绮惧搧宸ョ▼绯诲垪鏁欐潗 STM32鍗曠墖鏈哄紑鍙戝疄渚?鍩轰簬Proteus铏氭嫙浠跨湡涓嶩AL\LL搴揫M]. 鍖椾含锛氱數瀛愬伐涓氬嚭鐗堢ぞ, 2021.01.
- 绗﹀己. 宓屽叆寮忓疄楠屼笌瀹炶返鏁欑▼ 鍩轰簬STM32涓嶱roteus[M]. 瑗垮畨锛氳タ瀹夌數瀛愮瀛︽妧鏈ぇ瀛﹀嚭鐗堢ぞ, 2021.12.
- 璧靛箍鍏冪紪钁? Proteus杈呭姪鐨勫崟鐗囨満鍘熺悊瀹炶返鍩虹璁捐璇剧▼璁捐鍜屾瘯涓氳璁M]. 鍖椾含鑸┖鑸ぉ澶у鍑虹増绀? 2013.09.
馃尶1.3 鑳屾櫙璁剧疆
馃崈1.3.1 棰滆壊淇敼
Template鈥揝et Design Defaluts
Paper Colour锛堣儗鏅壊锛?Grid Colour锛堢綉鏍奸鑹诧級
缃戞牸绾夸慨鏀?br> Toggle grid
Proteus鍏抽敭璇?/th> 鍏冨櫒浠?/th> AT89C51 AT89C51鍗曠墖鏈?/td> RES 鐢甸樆 LED-YELLOW 榛勮壊鍙戝厜浜屾瀬绠?/td> CRYSTAL 鏅舵尟 CAP 鐢靛銆愭棤鏋佹€с€?/td> CAP-POL 鐢靛銆愭湁鏋佹€с€?/td> 7SEG-MPX4-CC 4浣嶅叡闃存瀬鏁扮爜绠?/td> COMPIM 铏氭嫙涓插彛鍏冧欢 BUTTON 鎸夐敭 74LS47 BCD-7娈垫暟鐮佺璇戠爜鍣?/td> KEYPAD-SMALLCALC 灏忓瀷璁$畻鍣ㄩ敭鐩?/td> RESPACK-8 鎺掗樆 MOTOR 鐢垫満
馃崈1.3.4 鍣ㄤ欢鏃嬭浆
閫変腑鍣ㄤ欢鈥撳彸閿?br>
Proteus鍏抽敭璇?/th> 鍏冨櫒浠?/th> AT89C51 AT89C51鍗曠墖鏈?/td> RES 鐢甸樆 LED-YELLOW 榛勮壊鍙戝厜浜屾瀬绠?/td>
馃崈2.1.2 鐢佃矾
#include //鍗曠墖鏈哄ご鏂囦欢
sbit LED=P0^0; //瀹氫箟LED涓虹鍙0锛?
void main() //涓荤▼搴?/span>
{
while(1) //鏃犻檺寰幆
{
LED=0; //P0锛?杈撳嚭浣庣數骞筹紝鍙戝厜浜屾瀬绠$偣浜?/span>
//LED=1; //P0锛?杈撳嚭楂樼數骞筹紝鍙戝厜浜屾瀬绠″叧闂?/span>
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
馃尶2.2 娴佹按鐏?/h2>
馃崈2.2.1 鍣ㄤ欢娓呭崟
Proteus鍏抽敭璇?/th> 鍏冨櫒浠?/th> AT89C51 AT89C51鍗曠墖鏈?/td> RES 鐢甸樆 LED-YELLOW 榛勮壊鍙戝厜浜屾瀬绠?/td>
馃崈2.2.2 鐢佃矾
#include //鍗曠墖鏈哄ご鏂囦欢
void Delay(); //寤舵椂瀛愮▼搴忚鏄?/span>
void main() //涓荤▼搴?/span>
{
unsigned char i;
unsigned char temp;
P0=0xff; //浜岃繘鍒?1111111
while(1) //鏃犻檺寰幆
{
temp=0x80; //浜岃繘鍒?0000000
for(i=0;i<8;i++)
{
P0=~temp; //鍙栧弽
Delay(); //寤舵椂
temp=temp>>1 //鍙崇Щ涓€浣?/span>
}
}
}
/*寤舵椂瀛愮▼搴忎娇LED鍦ㄥ彉鍖栨椂鏈変竴涓仠鐣欐椂闂达紝閫氳繃涓€涓寰幆鍜屽唴寰幆鐨勭┖鎿嶄綔锛?
*鍏卞惊鐜?55脳255娆? */
void Delay()
{
unsigned char i,j;
for(i=0;i<255;i++) //澶栧惊鐜?55娆?/span>
for(j=0;j<255;j++); //鍐呭惊鐜?55娆?/span>
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
鏃堕挓棰戠巼 Clock Frequency
12MHz
馃尶2.3 涓€浣?a href="https://so.csdn.net/so/search?q=%E6%95%B0%E7%A0%81%E7%AE%A1&spm=1001.2101.3001.7020" target="_blank" class="hl hl-1" data-report-view="{"spm":"1001.2101.3001.7020","dest":"https://so.csdn.net/so/search?q=%E6%95%B0%E7%A0%81%E7%AE%A1&spm=1001.2101.3001.7020","extra":"{\"searchword\":\"鏁扮爜绠"}"}" data-report-click="{"spm":"1001.2101.3001.7020","dest":"https://so.csdn.net/so/search?q=%E6%95%B0%E7%A0%81%E7%AE%A1&spm=1001.2101.3001.7020","extra":"{\"searchword\":\"鏁扮爜绠"}"}" data-tit="鏁扮爜绠? data-pretit="鏁扮爜绠?>鏁扮爜绠?/a>璁℃暟鐢佃矾
馃崈2.3.1 鍣ㄤ欢娓呭崟
Proteus鍏抽敭璇?/th> 鍏冨櫒浠?/th> AT89C51 AT89C51鍗曠墖鏈?/td> RES 鐢甸樆 BUTTON 鎸夐敭 7SEG-COM-AN-GRN 鏁扮爜绠?缁胯壊)
#include
unsigned char code Tab[]={0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x90};
//0-9,鍏遍槼鏁扮爜绠$爜娈佃〃
void Delay()//绠€鍗曞欢鏃跺瓙绋嬪簭
{
unsigned char i,j;
for(i=0;i<255;i++)
for(j=0;j<255;j++);
}
void main()//涓荤▼搴?/span>
{
unsigned char i=1;
while(1)
{
P0=Tab[i];//閫佺浉搴旂爜娈佃〃鍊?/span>
Delay();
i++;
if(i>9) i=0;
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
涓€浣嶆暟鐮佺鎵嬪姩璁℃暟浠g爜
#include
unsigned char code Tab[]={0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x90};
//0-9,鍏遍槼鏁扮爜绠$爜娈佃〃
unsigned char p=1;
void Delay()//绠€鍗曞欢鏃跺瓙绋嬪簭
{
unsigned char i;
for(i=300;i>0;i--);
}
void main()//涓荤▼搴?/span>
{
EA=1;//寮€鎬诲厑璁稿紑鍏?/span>
IT0=1;EX0=1;//寮€澶栭儴涓柇0鍜屽閮ㄤ腑鏂?鍏佽鍒嗗紑鍏?/span>
IT1=1;EX1=1;//寮€澶栭儴涓柇1鍜屽閮ㄤ腑鏂?鍏佽鍒嗗紑鍏?/span>
while(1)
{
P0=Tab[p]; //杈撳嚭鐮佹琛?/span>
Delay();
}
}
void intersvr0(void) interrupt 0 using 1 //澶栭儴涓柇0澶勭悊瀛愮▼搴?/span>
{
p++;
if(p>9) p=9;
}
void intersvr1(void) interrupt 2 using 1 //澶栭儴涓柇1澶勭悊瀛愮▼搴?/span>
{
p--;
if(p<1) p=1;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
馃尶2.4 鍥涗綅鏁扮爜绠¤鏃跺櫒
馃崈2.4.1 鍣ㄤ欢娓呭崟
Proteus鍏抽敭璇?/th> 鍏冨櫒浠?/th> AT89C51 AT89C51鍗曠墖鏈?/td> RES 鐢甸樆 7SEG-MPX4-CA 4浣嶆暟鐮佺
馃崈2.4.2 鐢佃矾
#include
unsigned char code Tab[]={0xC0,0xF9,0xA4,0XB0,0x99,0x92,0x82,0xF8,0x80,0x90};
//0-9,鍏遍槼鏁扮爜绠$爜娈佃〃
unsigned char Dat[]={0,0,0,0};
unsigned char tmp,i,j;
unsigned char p=0
void Delay()//绠€鍗曞欢鏃跺瓙绋嬪簭
{
unsigned char i;
for(i=0;i<n;i++);
}
void main()//涓荤▼搴?/span>
{
while(1)
{
p++;
if(p>500) p=0;
Dat[0]=p/100; //鐧句綅
Dat[1]=p%100/10;//鍗佷綅
Dat[2]=p%10;//涓綅
tmp=0x01;
for(i=0;i<3;i++)
{
P2=tmp;
P0=Tab[Dat[i]];
tmp=tmp<<1;
Delay(250);
}
for(i=0;i<150;i++)
for(j=0;j<100;j++)
Delay(60000);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
馃帇3. 閬囧埌鐨勪竴浜沞rrors
馃尶3.1 No power supply specified for net VDDA鈥?/h2>
No power supply specified for net VDDA in Power Rail Configuration.
瑙e喅鏂规硶锛?br> Design->Powe Rail Configuration
灏哣DDA銆乂SSA绉诲叆鍙宠竟锛屽苟鍙栨秷鍕鹃€夆€渦se default power rail connections鈥?br> Proteus宸ョ▼)
浠跨湡瑙嗛
- /**
- ******************************************************************************
- * @file KeyPad.asm
- * @author Alex鈥斺€斿皬鐧?/div>
- * @version V1.0
- * @date 2019.9.1
- * @brief 4X4鐭╅樀閿洏锛孡CD1602鏄剧ず鎸夐敭鍊?/div>
- * @store 鏈夊Proteus浠跨湡搴楀瓙
- * @Link https://shop484534014.taobao.com/
- * @Email 844545015@qq.com
- ******************************************************************************
- * @attention All Rights Reserved
- **/
- 鈥?/div>
- KeyVal EQU 30H ;鎸夐敭鍊?/div>
- 鈥?/div>
- LcdRs EQU P2.0 ;LCD1602寮曡剼瀹氫箟
- LcdRw EQU P2.1
- LcdEn EQU P2.2
- 鈥?/div>
- ORG 0000H ;绋嬪簭鎵ц鐨勮捣濮嬪湴鍧€
- LJMP Main ;璺宠浆鍒癿ain鍑芥暟
-
- ORG 0100H ;绋嬪簭璺宠浆鍒?span class="hljs-number">0100H寮€濮嬫墽琛?/div>
- Main: ;鏈€绠€鍗曠殑鎸夐敭璧嬪€?8涓寜閿?
- MOV KeyVal,#0FFH
- LCALL LCD_INIT ;鍒濆鍖朑UI
- MOV A,#080H
- LCALL LCD_WCMD
- While:
- LCALL KeyPad
- MOV A,KeyVal
- CJNE A,#0FFH,NEXT
- SJMP While
- NEXT:
- LCALL LCD_WDAT
- MOV KeyVal,#0FFH
- SJMP While ;While寰幆
- 鈥?/div>
- KeyPad:
- MOV P1,#0FFH ;榛樿楂樼數骞?
- CLR P1.4 ;P14=0,鏌ョ湅绗?span class="hljs-number">1鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
- MOV A,P1 ;A=P1
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨,鍒ゆ柇浣?span class="hljs-number">4浣嶆槸鍚︽湁鎸夐敭
- JZ Col1 ;绗?span class="hljs-number">1鍒楋紝鍚﹀垯璺崇2鍒?/div>
- LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
- MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨
- JZ Col1
- MOV A,P1
- ANL A,#0FH
- CJNE A,#0EH,Row1
- JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'1'
- Row1:
- CJNE A,#0DH,Row2
- JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'4'
- LJMP Over
- Row2:
- CJNE A,#0BH,Row3
- JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'7'
- LJMP Over
- Row3:
- CJNE A,#07H,Col1
- JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'0'
- 鈥?/div>
- Col1:
- MOV P1,#0FFH ;榛樿楂樼數骞?
- CLR P1.5 ;P15=0,鏌ョ湅绗?span class="hljs-number">2鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
- MOV A,P1 ;A=P1
- JZ Col2 ;绗?span class="hljs-number">2鍒楋紝鍚﹀垯璺崇3鍒?/div>
- LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
- MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨
- JZ Col2
- MOV A,P1
- ANL A,#0FH
- CJNE A,#0EH,Row4
- JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'2'
- 鈥?/div>
- Row4:
- CJNE A,#0DH,Row5
- JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'5'
- Row5:
- CJNE A,#0BH,Row6
- JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'8'
- 鈥?/div>
- Row6:
- CJNE A,#07H,Col2
- JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'C'
-
- Col2:
- MOV P1,#0FFH ;榛樿楂樼數骞?
- CLR P1.6 ;P16=0,鏌ョ湅绗?span class="hljs-number">3鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
- MOV A,P1 ;A=P1
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨
- JZ Col3 ;绗?span class="hljs-number">3鍒楋紝鍚﹀垯璺崇4鍒?/div>
- LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
- MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨
- JZ Col3
- MOV A,P1
- ANL A,#0FH
- CJNE A,#0EH,Row7
- JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'3'
- LJMP Over
- Row7:
- CJNE A,#0DH,Row8
- JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'6'
- LJMP Over
- Row8:
- CJNE A,#0BH,Row9
- JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'9'
- LJMP Over
- Row9:
- CJNE A,#07H,Col3
- JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'='
- LJMP Over
- 鈥?/div>
- Col3:
- MOV P1,#0FFH ;榛樿楂樼數骞?
- CLR P1.7 ;P16=0,鏌ョ湅绗?span class="hljs-number">3鍒楁槸鍚︽湁鎸夐敭瑙﹀彂
- MOV A,P1 ;A=P1
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨
- JZ Over ;缁撴潫
- LCALL Delay ;娑堟姈鍚庯紝鍐嶆妫€娴?/div>
- MOV A,P1 ;A=P1锛屽啀娆″垽鏂槸鍚︽湁鎸夐敭瑙﹀彂
- ANL A,#0FH ;A&0FH涓?/div>
- XRL A,#0FH ;A^0FH寮傛垨
- JZ Over
- MOV A,P1
- ANL A,#0FH
- CJNE A,#0EH,Row10
- JNB P1.0,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'+'
- 鈥?/div>
- Row10:
- CJNE A,#0DH,Row11
- JNB P1.1,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'-'
- 鈥?/div>
- Row11:
- CJNE A,#0BH,Row12
- JNB P1.2,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'*'
- Row12:
- CJNE A,#07H,Over
- JNB P1.3,$ ;闀挎寜妫€娴嬶紝鑻ユ湁鍒欎竴鐩存寰幆
- MOV KeyVal,#'/'
- Over:
- RET
- 鈥?/div>
- 鈥?/div>
- LCD_INIT: ;鍒濆鍖朙CD1602
- LCALL Delay ;璁剧疆8绾匡紝5*7绛?/div>
- MOV A,#38H
- LCALL LCD_WCMD
- LCALL Delay
- MOV A,#06H
- LCALL LCD_WCMD
- LCALL Delay
- MOV A,#0CH
- LCALL LCD_WCMD
- LCALL Delay
- MOV A,#01H
- LCALL LCD_WCMD
- LCALL Delay
- MOV A,#80H ;鏄剧ず鍒濆鍖栨暟缁?span class="hljs-keyword">TABLE_INIT锛屾渶涓嬮潰鍙殢鎰忔洿鏀?
- LCALL LCD_WCMD
- MOV R0,#00H
- MOV DPTR,#TABLE_INIT
- init0: ;鏄剧ず " LCD Initial "
- MOV A,R0
- MOVC A,@A+DPTR
- LCALL LCD_WDAT
- NOP
- INC R0
- CJNE R0,#16,init0
-
- MOV A,#0C0H ;鏄剧ず鍒濆鍖栨暟缁?span class="hljs-keyword">TABLE_KeyPad
- LCALL LCD_WCMD
- MOV R0,#00H
- MOV DPTR,#TABLE_KeyPad
- init1: ;鏄剧ず " KeyPad "
- MOV A,R0
- MOVC A,@A+DPTR
- LCALL LCD_WDAT
- NOP
- INC R0
- CJNE R0,#16,init1
- 鈥?/div>
- LCALL Delay1s
- LCALL Delay1s
-
- MOV A,#01H ;娓呭睆
- LCALL LCD_WCMD
- RET
- 鈥?/div>
- LCD_WCMD: ;LCD1602鍐欐寚浠わ紝鍏蜂綋鍙LCD涓В閲?/div>
- LCALL LCD_Wait
- CLR LcdEn
- CLR LcdRs
- CLR LcdRw
- 鈥?/div>
- NOP
- SETB LcdEn
- NOP
- MOV P0,A
- NOP
- CLR LcdEn
- NOP
- 鈥?/div>
- RET
- 鈥?/div>
- LCD_WDAT: ;LCD1602鍐欐暟鎹?/div>
- LCALL LCD_Wait
- CLR LcdEn
- SETB LcdRs
- CLR LcdRw
- NOP
- SETB LcdEn
- NOP
- MOV P0,A
- NOP
- CLR LcdEn
- RET
- 鈥?/div>
- Delay: ;t=t1*20=10ms锛屼慨鏀筊6鐨勫€煎嵆鍙洿鏀规椂闂?涓嶇簿鍑?
- MOV R6, #20 ;20
- D1:
- MOV R7, #0FAH ;t1=250*2=500
- D2:
- DJNZ R7, D2 ;R7=250鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
- DJNZ R6, D1 ;R6=020鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
- RET
- 鈥?/div>
- Delay1s: ;t=t1*10=5ms锛屼慨鏀筊6鐨勫€煎嵆鍙洿鏀规椂闂?涓嶇簿鍑?
- MOV R5, #08H ;鍗曞懆鏈燂紝8娆?/div>
- D3: ;t1=t2*250=500*250=125000
- MOV R6, #0FAH
- D4:
- MOV R7, #0FAH ;t2=250*2=500
- D5:
- DJNZ R7, D5 ;R7=250鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
- DJNZ R6, D4 ;R6=250鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
- DJNZ R5, D3 ;R5=100鑷噺锛岀洿鍒颁负0璺冲嚭寰幆锛屽弻鍛ㄦ湡
- RET
- 鈥?/div>
- TABLE_INIT:
- DB " LCD Initial "
- TABLE_KeyPad:
- DB " KeyPad "
- 鈥?/div>
- END
濡傞渶涓嬭浇Proteus浠跨湡鏂囦欢鍜孠eil宸ョ▼锛岃鍏虫敞鍏紬鍙凤細
Proteus浠跨湡搴楀瓙
锛堣嫢闇€Proteus鍜宬eil瀹夎鍖咃紝鍚庡彴鍥炲锛?strong>瀹夎鍖?/strong>锛涜嫢闇€Proteus鏁欏瑙嗛锛屽悗鍙板洖澶嶏細Proteus瑙嗛锛涜嫢闇€鍏跺畠璁捐锛屽悗鍙板洖澶嶏細51姹囩紪璁捐锛?/p>
返回列表
上一篇: proteus 8086仿真时中断无反应
下一篇: proteus四位数字显示器
相关文章
proteus keypad使用方法
大家好!今天让小编来大家介绍下关于proteus keypad使用方法的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。 文章目录列表: 1、proteus乘法器在哪 2、proteusKEYPAD-PHONE3*4电话键盘原理 3、proteus keypad-smallcalc怎么连接 4、proteus中 keypad_smallcalc怎么接线 一、proteus乘法器在哪 只要在Proteus中输入:keypad就出来了,里有三种计算器Proteus软件是英国LabCenterElectronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是比较好的仿真单片机及外围器件的工具。 二、proteusKEYPAD-PHONE3*4电话键盘原理 keypad-phone的原理就是一个矩阵键盘,横列和数列,ABCD可以接高4位,1234可以接低4位。keypad-phone的应用可以作为监控来监控画面。监控系统中键盘都是独立的,是通过线缆...
proteus keypad使用方法
教你如何使用Proteus中的Keypad键盘模块 Proteus是一款功能强大的电路仿真软件,在其中加入Keypad键盘模块可以方便我们进行电路设计。但是如何使用这个模块呢?下面我们就来详细了解一下。 Step 1:找到Keypad键盘模块 首先,我们需要在Proteus中找到Keypad键盘模块,并将其拖入工作区域。通常情况下,Keypad模块可以在库管理器中找到,关于库管理器如何打开可以在网上搜索相关教程学习。 Step 2:设置Keypad键盘模块的参数 接下来,我们需要对Keypad模块的一些参数进行设置,包括行数、列数以及按键的对应字符等。在添置Keypad模块后,双击该模块会出现“Keypad Editor”窗口,然后你可以根据需要进行设置。设置完成后,用鼠标拖动Keypad中的矩阵元件调整位置即可。 Step 3:连接Keypad键盘模块与控制器 最后一步就是将Keypad键盘模块与控制器连接起来。对于Arduino等常见的运控板,通常只需要连接模块的R1、R2、R3、R4引脚到运控板的数字口,C1、C2、C3引脚到运控板的模拟口即可,并根据实际需要进行代...
发表评论
4617作文网餐饮公司起什么名字好阮起什么名字美食店起名字大全集属马生起名解梦 滑滑梯戴姓起名大全叶罗丽精灵梦破解版游戏下载口袋宝可梦go破解版起个踢毽子群名嘴巴周围容易起皮早餐店免费起名大全免费在线起名名字测试周公解梦偷钱涂姓怎么起名女孩姓金起什么名字男孩子起名带新字适合卖女装的店铺起名健康管理类公司起名字夏氏起名大全起个群名霸气十足什么臻起名起名舒什么好听起名带金带水的女孩名字周易名字打分测试免费13笔画的字适合起名字机电设备有限公司起名大全梦见找不到回家的路 周公解梦公司免费起名 机械起名带妍字的周易取名测名字测试打分结果淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测