久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 單片機16*64點陣點亮單個LED后 屏幕有不規則干擾 [打印本頁]

作者: hqboy    時間: 2023-3-4 17:35
標題: 單片機16*64點陣點亮單個LED后 屏幕有不規則干擾
代碼如下:參照網上一位老師的程序修改后能點亮單個LED了。但是屏幕上有不規則LED閃爍干擾。各位老師幫忙看看是什么原因呢?非常感謝
這是抓拍的圖片.



#include<reg52.h>
sbit HC595_DS = P3^6;
sbit HC595_STCP = P3^5;
sbit HC595_SHCP = P3^4;
sbit HC595_OE = P3^7;

void HC595_WriteByte(unsigned char value)
{
                        unsigned char i;
                        for(i=0;i<8;i++)
  {
                        HC595_SHCP = 0;
                        HC595_DS = value&(0x7f >> i);
                        HC595_SHCP = 1;
  }
}
void Lattice_WriteData(unsigned char *buffer,unsigned char value,value1)
{
while(*buffer)//列掃描
{
                        HC595_WriteByte(*buffer++);
}
                        HC595_WriteByte(value);//行數據低八位
                        HC595_WriteByte(value1);//行數據高八位
                        HC595_STCP = 0;
                        HC595_STCP = 1;
}
unsigned char buffer[]={0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff};//64列
void main()
{
               
         while(10)
                        
                {
                        HC595_OE = 0;
                        Lattice_WriteData(buffer,0x7f,0xff);
                }

}

LED干擾閃爍.zip

2.75 MB, 下載次數: 9

視頻拍攝效果


作者: 飛云居士    時間: 2023-3-4 18:11
檢查線路是否有接觸不良、短路等。如一切正常,程序中在往顯示緩沖區寫數據時,短暫關閉顯示。
作者: hqboy    時間: 2023-3-4 20:53
飛云居士 發表于 2023-3-4 18:11
檢查線路是否有接觸不良、短路等。如一切正常,程序中在往顯示緩沖區寫數據時,短暫關閉顯示。

線路檢查沒有問題,謝謝
作者: 大漠落日    時間: 2023-3-4 20:55
消隱沒有寫好
作者: 405616736    時間: 2023-3-5 01:31
本帖最后由 405616736 于 2023-3-5 01:43 編輯

unsigned char buffer[]={0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff};//64列
從數組0x7f,0xff推測你64列為低電平有效,對應行為高電平有效

Lattice_WriteData(buffer,0x7f,0xff);
這條代碼,行給出0x7f,0xff已經點亮出第一個外所有LED。與點亮單個LED了的想法不符了。

建議先弄清楚點陣屏的行列有效電平。
再重點關注以下幾行代碼
HC595_DS = value&(0x7f >> i);
unsigned char buffer[]={0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff};//64列Lattice_WriteData(buffer,0x7f,0xff);

作者: 405616736    時間: 2023-3-5 01:41
大漠落日 發表于 2023-3-4 20:55
消隱沒有寫好

行列都用595驅動的不需要消隱
作者: 405616736    時間: 2023-3-5 05:01
由unsigned char buffer[]={0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff};//64列
判斷列為低電平有效,行為高電平有效
但Lattice_WriteData(buffer,0x7f,0xff);
行數據復制0x7f,0xff,給出除了第一個點都有效,這里與“點亮單個LED”就已經不相符。
建議了解情況行列的高低電平有效值,注意修改以下三行代碼:
HC595_DS = value&(0x7f >> i);
unsigned char buffer[]={0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff};//64列
Lattice_WriteData(buffer,0x7f,0xff);
作者: 人中狼    時間: 2023-3-5 07:58
缺電路圖,代碼看著邏輯有問題
作者: hqboy    時間: 2023-3-5 21:48
405616736 發表于 2023-3-5 05:01
由unsigned char buffer[]={0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff};//64列
判斷列為低電平有效,行為 ...

非常感謝,板子是以前設備上的,拆下來改的,所以電路上不是完全理清,想著單片機上面寫程序測試能測出來就先試試看了。
作者: hqboy    時間: 2023-3-5 21:49
人中狼 發表于 2023-3-5 07:58
缺電路圖,代碼看著邏輯有問題

電路圖沒有,是其它設備上拆的點陣板子 大致理了一下線路 點亮了一些 ,想著用單片機來測試看看
作者: 人中狼    時間: 2023-3-5 23:47
先查電路圖吧,代碼邏輯有問題,與電路有關




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 一本大道久久a久久精二百 国产成人免费在线 | 99视频在线免费观看 | 色婷婷综合久久久中字幕精品久久 | 日韩a视频 | 午夜影视网| 国产欧美精品一区二区色综合 | 国产精品久久久久久久 | 色橹橹欧美在线观看视频高清 | 精品国产鲁一鲁一区二区张丽 | 蜜桃综合在线 | 国产91丝袜在线18 | 亚洲先锋影音 | 二区中文字幕 | 欧美精品一区二区三区在线 | 国产精品不卡一区 | 97人人草| 国产高清自拍视频在线观看 | 在线伊人网 | 成人午夜免费网站 | 亚洲成人高清 | 国产精品毛片无码 | 国产欧美一区二区精品忘忧草 | 国产午夜久久 | 日韩av在线不卡 | 欧美人人 | 中文字幕在线观看一区二区 | 亚洲成av | 天天av综合 | 久久国产精品视频 | 久久国产精品视频 | 91麻豆精品一区二区三区 | aaaaaaa片毛片免费观看 | 亚洲 欧美 日韩 在线 | 午夜资源| 美女毛片免费看 | 色视频在线免费观看 | 中国大陆高清aⅴ毛片 | 久久久久久国产 | 欧美精品网 | 成人一区二区电影 | 九九九久久国产免费 |