你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

[STM32F401-DISCO开发板]实验二、驱显黑白LCD_6903,串口调试

[复制链接]
zhjb1 发布时间:2017-12-10 09:47
[STM32F401-DISCO开发板]实验一、STM32F401 DISCO开发板介绍,点亮LED
[STM32F401-DISCO开发板]实验三、2路ADC采样+2路PWM输出实验


这款显示器是黑白的,横向65点阵纵向102点阵,采用8X6点阵非标ASCII码,一行可以显示17个英文X8行,基本够用了。
首先在项目目录中创建一个incs文件夹,将6903.h文档拷贝进去;而后在IAR项目中创建1个文件夹,命名为incs,并且将incs文件夹中的6903.h加进去。
6903.h代码如下:
DigitalOut sdat(PE_15);
DigitalOut sclk(PE_13);
DigitalOut sreg(PE_11);
DigitalOut sres(PE_9);
extern int k;
//6903 102X65LCD
const unsigned char asc2[][6]={//8x6 Dots 32-126[0-94]
{0x00,0x3E,0x45,0x49,0x51,0x3E},//0
{0x00,0x00,0x21,0x7F,0x01,0x00},//1
{0x00,0x31,0x43,0x45,0x49,0x31},//2
{0x00,0x22,0x49,0x49,0x49,0x36},//3
{0x00,0x04,0x0C,0x14,0x7F,0x04},//4
{0x00,0x72,0x51,0x51,0x51,0x4E},//5-5
{0x00,0x3E,0x49,0x49,0x49,0x06},//6
{0x00,0x40,0x43,0x4C,0x50,0x60},//7
{0x00,0x36,0x49,0x49,0x49,0x36},//8
{0x00,0x30,0x48,0x48,0x48,0x3F},//9
{0x00,0x1F,0x24,0x64,0x24,0x1F},//A-10
{0x00,0x41,0x7F,0x49,0x49,0x36},//B
{0x00,0x3E,0x41,0x41,0x41,0x22},//C
{0x00,0x41,0x7F,0x41,0x41,0x3E},//D
{0x00,0x41,0x7F,0x49,0x49,0x63},//E
{0x00,0x41,0x7F,0x49,0x5C,0x60},//F-15
{0x00,0x3E,0x41,0x45,0x47,0x24},//G
{0x41,0x7F,0x08,0x08,0x08,0x7F},//H
{0x00,0x00,0x41,0x7F,0x41,0x00},//I
{0x00,0x42,0x41,0x7F,0x40,0x40},//J
{0x00,0x41,0x7F,0x59,0x24,0x43},//K-20
{0x00,0x40,0x7F,0x41,0x01,0x03},//L
{0x00,0x7F,0x20,0x1E,0x20,0x7F},//M
{0x00,0x7F,0x30,0x18,0x06,0x7F},//N
{0x00,0x3E,0x41,0x41,0x41,0x3E},//O
{0x00,0x41,0x7F,0x49,0x48,0x30},//P-25
{0x00,0x3E,0x41,0x47,0x42,0x3D},//Q
{0x00,0x41,0x7F,0x49,0x4C,0x33},//R
{0x00,0x32,0x49,0x49,0x49,0x26},//S
{0x00,0x60,0x41,0x7F,0x41,0x60},//T
{0x00,0x7E,0x01,0x01,0x01,0x7E},//U-30
{0x00,0x7C,0x02,0x01,0x02,0x7C},//V
{0x00,0x7C,0x03,0x3C,0x03,0x7C},//W
{0x00,0x43,0x24,0x18,0x24,0x43},//X
{0x00,0x60,0x18,0x07,0x18,0x60},//Y
{0x00,0x63,0x45,0x49,0x51,0x63},//Z-35
{0x00,0x00,0x00,0x01,0x00,0x00},//.
{0x00,0x14,0x14,0x14,0x14,0x14},//=
{0x00,0x08,0x08,0x3E,0x08,0x08},//+
{0x00,0x08,0x08,0x08,0x08,0x08},//-
{0x00,0x00,0x00,0x24,0x00,0x00},//:-40
};
//Write Plus
void wri(void){sclk=0;sclk=1;}
//Write a byte to lcd dt=data,com=reg/data
void b2l(unsigned char dt,unsigned char com){
unsigned char i;
if(com)sreg=1;else sreg=0;
for(i=0;i<8;i++){
  if(dt&0x80){sdat=1;}else{sdat=0;};
  dt=dt<<1;
  wri();
}
}
//Set lcd display X,Y
void setXY(unsigned char X,unsigned char Y){
b2l(0x40 | Y,0);//column
b2l(0x80 | X,0);//row
}
//lcd Clear
void lcdClear(void){
unsigned char t,k;
setXY(0,0);
for(t=0;t<9;t++){for(k=0;k<102;k++){b2l(0x00,1);}}
}
//display a ASCII code
void c2l(unsigned char x,unsigned char y,unsigned char c){
unsigned char line;
setXY(x*6,y);   
for (line=0;line<6;line++) b2l(asc2[c][line],1);
}
//LCD6903 Initial 102x64
void lcdInit(void){
wait(0.20);
sres=0;
wait(0.20);
sres=1;
wait(0.20);
b2l(0x25,0);//00100 PD=1dcOn|=0Dcoff V=0Up|=1Left H==1
wait(0.005);
b2l(0x14,0);//Plus width L000~111=1/6-1/7-1/8-1/9//14=1/7
wait(0.005);
b2l(0xB4,0);//SET VOP~8.96V
wait(0.005);
b2l(0x20,0);//PD=0,H=0,V=0
b2l(0x0C,0);//Set off
wait(0.005);
}
//Display ASCII Test
void dispAsc(void){
int i,j;
for(i=0;i<8;i++){
  for(j=0;j<17;j++){
   c2l(j,i,k);
   if(k>39){k=0;}else{k++;}
  }
}
}
//END Files//
main.cpp的前边加上:
#include "6903.h"
接着加上:
Serial lptOut(USBTX, USBRX);//由PinNames.h定义的串口:PA_2,PA_3
DigitalOut myled(PD_12);//定义PD_12绿的的LED
接着定义一个公共变量:
int k=0;
main主函数如下:
int main(){
lcdInit();
lcdClear();
lptOut.printf("LCD6903 Test !\n\r");
while(1){
  dispAsc();
  myled = !myled;
  lptOut.printf("LCD6903 Test ! \n\r");
  wait(0.5f);
  lcdClear();
}
}
串口速率设置在mbed_config.h文件中。
编译下载后程序运行为:在PA_2——串口RX,PA_3——串口TX,输出“LCD6903 Text !”。照片21为LCD6903以及虚拟串口硬件连接,照片22是LCD6903 轮显刷屏ASCII码,截图23是串口输出的显示数据。

21

21

22

22

23

23
收藏 评论2 发布时间:2017-12-10 09:47

举报

2个回答
anywill 回答时间:2017-12-10 10:23:19
占沙发
zhjb1 回答时间:2017-12-10 10:54:55

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似分享

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版