1602控制forMSP430
- /*****************************************************************
- //文件名:1602.h
- //描述:該頭文件定義與1602有關(guān)的各種接口、函數(shù),適用于MSP430F149
- //編寫人:小邪@清水
- //版本號(hào):1.00
- *****************************************************************/
- #include
- #include"1602.h"
- #defineucharunsignedchar
- #defineuintunsignedint
- ucharNUM[]={"0123456789."};
- /*****************************************************************
- //關(guān)于1602的一些宏定義
- //注意:除第三個(gè)外都要根據(jù)實(shí)際使用IO口更改
- *****************************************************************/
- #defineDataDirP4DIR
- #defineDataPortP4OUT
- #defineBusy0x80
- #defineCtrlDirP3DIR
- #defineCLR_RSP3OUT&=~BIT0;//RS=P3.0
- #defineSET_RSP3OUT|=BIT0;
- #defineCLR_RWP3OUT&=~BIT1;//RW=P3.1
- #defineSET_RWP3OUT|=BIT1;
- #defineCLR_ENP3OUT&=~BIT2;//EN=P3.2
- #defineSET_ENP3OUT|=BIT2;
- /*************************************************************************
- //名稱:delay
- //參數(shù):無(wú)
- //返回值:無(wú)
- //功能:延時(shí)5ms的時(shí)間
- *************************************************************************/
- voidDelay5ms(void)
- {
- uinti=40000;
- while(i!=0)
- {
- i--;
- }
- }
- /*************************************************************************
- //名稱:WaitForEnable
- //參數(shù):無(wú)
- //返回值:無(wú)
- //功能:等待直到1602完成當(dāng)前操作
- *************************************************************************/
- voidWaitForEnable(void)
- {
- P4DIR&=0x00;//將P4口切換為輸入狀態(tài)
- CLR_RS;
- SET_RW;
- _NOP();
- SET_EN;
- _NOP();
- _NOP();
- while((P4IN&Busy)!=0);//檢測(cè)忙標(biāo)志
- CLR_EN;
- P4DIR|=0xFF;//將P4口切換為輸出狀態(tài)
- }
- /*************************************************************************
- //名稱:WriteCommand
- //參數(shù):cmd--命令,chk--是否判忙的標(biāo)志,1:判忙,0:不判
- //返回值:無(wú)
- //功能:向1602寫指令
- *************************************************************************/
- voidWriteCommand(ucharcmd,ucharchk)
- {
- if(chk)WaitForEnable();//檢測(cè)忙信號(hào)
- CLR_RS;
- CLR_RW;
- _NOP();
- DataPort=cmd;//將命令字寫入數(shù)據(jù)端口
- _NOP();
- SET_EN;//產(chǎn)生使能脈沖信號(hào)
- _NOP();
- _NOP();
- CLR_EN;
- }
- /*************************************************************************
- //名稱:WriteData
- //參數(shù):unsignedcharData
- //返回值:無(wú)
- //功能:向1602寫入數(shù)據(jù)
- *************************************************************************/
- voidWriteData(uchardata)
- {
- WaitForEnable();//等待液晶不忙
- SET_RS;
- CLR_RW;
- _NOP();
- DataPort=data;//將顯示數(shù)據(jù)寫入數(shù)據(jù)端口
- _NOP();
- SET_EN;//產(chǎn)生使能脈沖信號(hào)
- _NOP();
- _NOP();
- CLR_EN;
- }
-
關(guān)鍵詞:
1602控制MSP43
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論