標(biāo)題:
MSP430f5529的端口模擬IIC程序
[打印本頁]
作者:
woaidezhu
時(shí)間:
2018-10-18 14:48
標(biāo)題:
MSP430f5529的端口模擬IIC程序
因?yàn)楣俜浇o的硬件IIC程序弄起來有點(diǎn)麻煩,索性不如用端口模擬一個(gè)IIC程序出來
0.png
(10.76 KB, 下載次數(shù): 81)
下載附件
2018-10-18 16:35 上傳
單片機(jī)源程序如下:
/*
* LCD12864.C
*
* Created on: 2018年7月17日
* Author: PC100
*/
#include "LCD12864.h"
#include "msp430.h"
//寫顯示數(shù)據(jù)
void LCD_data(unsigned char data_data)
{unsigned int i;
P1DIR=0x7c;
P3DIR=0xff;
P1OUT=0xff;
P1OUT=(P1OUT^BIT3);//RW=0
P1OUT=(P1OUT|BIT2);//RS=1
// delay50us(1);
for(i=0;i<4;i++)
P3OUT=data_data;
delay_10us();
P1OUT=(P1OUT|BIT4);//E=1
// delay50us(10);
for(i=0;i<40;i++)
delay_10us();
P1OUT=(P1OUT^BIT4);//E=0
// delay50us(2);
delay_100us();
}
//寫指令
void LCD_command(unsigned int com_data)
{unsigned int i;
P1DIR=0x7c;
P3DIR=0xff;
P1OUT=0xff;
P1OUT=(P1OUT^BIT3);//RW=0
P1OUT=(P1OUT^BIT2);//RS=0
// delay50us(1);
for(i=0;i<4;i++)
delay_10us();
P3OUT=com_data;
P1OUT=(P1OUT|BIT4);//E=1
// delay50us(10);
for(i=0;i<40;i++)
delay_10us();
P1OUT=(P1OUT^BIT4);//E=0
// delay50us(2);
delay_100us();
}
//初始化
void LCD_Init(void)
{ unsigned int i;
// delay1ms(100);
for(i=0;i<100;i++)
delay_ms();
LCD_command(0x30);
// delay50us(4);
for(i=0;i<16;i++)
delay_10us();
LCD_command(0x30);
// delay50us(4);
for(i=0;i<16;i++)
delay_10us();
LCD_command(0x0c);//開顯示屏
// delay50us(4);
for(i=0;i<16;i++)
delay_10us();
LCD_command(0x01); //清屏指令
// delay50us(240);
for(i=0;i<12;i++)
delay_ms();
LCD_command(0x06);
// delay50us(10);
for(i=0;i<40;i++)
delay_10us();
}
復(fù)制代碼
所有資料51hei提供下載:
IIC.zip
(78.68 KB, 下載次數(shù): 45)
2018-10-18 14:47 上傳
點(diǎn)擊文件名下載附件
MSP430F5529
下載積分: 黑幣 -5
作者:
windy.2018
時(shí)間:
2018-10-18 18:37
很給力
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1