STC直接驱动点阵
本帖最后由 jzjjzj 于 2012-9-4 13:10 编辑STC单片机直接驱动8*8点阵,但显示亮度不足,在程序上有什么解决方法,还是我的程序有问题?
uchar table0[]={0xF7,0xF7,0xC1,0xF7,0xEB,0xDD,0xBE,0xFF}; //列 P2
uchar table1[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//行 P0
void hx()
{
uchar j;
for(j=0;j<8;j++)
{
//P2=0xff;
P0=table1;
P2=table0;
delayms(2);//毫秒级
}
} 怎么扫描的 说一下 八分之一注定不会太亮 Sullivan 发表于 2012-9-4 07:38 static/image/common/back.gif
八分之一注定不会太亮
1/16都很亮 亮度、分扫数、扫描频率 很矛盾的东西
改用静态吧 程序都没贴出来,谁知道你程序有没有问题 io选为强推,逐点扫描,可以参考杜洋的mini1608设计,如果要源码找我。。 在硬件上要加驱动 程序扫描过快也会导致亮度不足,但硬件不加驱动,注定是会亮度不足。 lcw_swust 发表于 2012-9-4 09:24 static/image/common/back.gif
程序都没贴出来,谁知道你程序有没有问题
程序贴了,帮忙看看呢!
oufuqiang 发表于 2012-9-4 07:55 static/image/common/back.gif
1/16都很亮
楼主说了是IO口直接驱动,注定不会太亮,要加驱动电路 jzjjzj 发表于 2012-9-4 13:14 static/image/common/back.gif
程序贴了,帮忙看看呢!
IO没初始化成推挽模式?
P0M0?
P0M1?
。。。 lcw_swust 发表于 2012-9-4 13:19 static/image/common/back.gif
IO没初始化成推挽模式?
P0M0?
P0M1?
我的单片机型号是STC89C52RC,没有这个功能 jzjjzj 发表于 2012-9-4 15:37 static/image/common/back.gif
我的单片机型号是STC89C52RC,没有这个功能
看程序里是P0输出高电平,P2输出低电平,点阵屏就亮是吧。
那就在P0的每个引脚上接一个1K的电阻到VCC。
程序也需要改一下:
P0=~table0;
P2=~table1;
内部设置为 强推挽输出 模式 内部强上啦 没有的话 就外部加4.7K上啦电阻 驱动能力不够呀!老兄!试着改强推,或者是外部加晶体管 P0加强上拉,330Ω 错了,按你程序,是P2要强上拉 P0口加上 上拉电阻 10K 吧, 还有就是注意扫描时间, 行扫描频率 在 60HZ--100HZ 效果做好。 IO直接驱动点阵注定亮度不够的,别折腾了,洗洗睡吧!
页:
[1]