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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2058|回復: 5
收起左側

C語言編程遇到了宏定義的問題,求解答,萬分感謝

[復制鏈接]
ID:364183 發表于 2019-3-21 17:16 | 顯示全部樓層 |閱讀模式
程序是初始化一塊OLED
貼出來如下

void Initial_ic(void)
{
IOCLR=0xffffffff;                     
IOSET=bBS1|bBS2|bRES|bCS|bE_RD;
IOCLR=bD_C|bR_W;
Reset_SSD1331Z();
Write_Register(0xae); //Display off
Write_Register(0x81); //set contrast for colorA
Write_Register(0x91); //145
Write_Register(0x82); //set contrast for colorB
Write_Register(0x50); //80
Write_Register(0x83); //set contrast for colorC
Write_Register(0x7d); //125
Write_Register(0x87); //master current control
Write_Register(0x06); //6
Write_Register(0x8a); //Set Second Pre-change Speed For ColorA
Write_Register(0x64); //100
Write_Register(0x8b); //Set Second Pre-change Speed For ColorB
Write_Register(0x78); //120
Write_Register(0x8c); //Set Second Pre-change Speed For ColorC
Write_Register(0x64); //100
Write_Register(0xa0); //set re=map &dataformat
Write_Register(0x74);
Write_Register(0xa1); //set display start line
Write_Register(0x00);
Write_Register(0xa2); //set display offset
Write_Register(0x00);
Write_Register(0xa4); //set display mode
Write_Register(0xa8); //set multiplex ratio
Write_Register(0x3f);
Write_Register(0xad); //set master configuration
Write_Register(0x8e);
Write_Register(0xb0); //set power save
Write_Register(0x00);
Write_Register(0xb1); //phase 1 and 2 period adjustment
Write_Register(0x31);
Write_Register(0xb3); //display clock divider / oscillator frequency
Write_Register(0xf0);
Write_Register(0xbb); //Set Pre-Change Level
Write_Register(0x3a); //58
Write_Register(0xbe); //set vcomh
Write_Register(0x3e); //62
Write_Register(0xaf); //set display on
}

void Reset_SSD1331Z(void)
{
IOCLR=bRES;
Delay_1ms(10);
IOSET=bRES;
        
}
        
void Write_Register (unsigned char out_command)
{
IOCLR=bD_C;
IOCLR=bCS;
IOCLR=bR_W;
IOCLR=0x000000ff;
IOSET= out_command;
IOSET=bR_W;
IOSET=bCS;
}

void Write_Data (unsigned char out_data)
{
IOSET=bD_C;
IOCLR=bCS;
IOCLR=bR_W;
IOCLR=0x000000ff;
IOSET=out_data;
IOSETbR_W;
IOSET=bCS;
}





編譯錯誤是
SSD1331.c(1241): error C202: 'IOCLR': undefined identifier
SSD1331.c(1242): error C202: 'IOSET': undefined identifier
SSD1331.c(1243): error C202: 'IOCLR': undefined identifier

這幾個錯誤說沒有定義,需要引用哪個文件能解決呢?
單片機入門小白,不恥下問,跪求大神,萬分感謝。
回復

使用道具 舉報

ID:246251 發表于 2019-3-21 18:52 | 顯示全部樓層
這個是寄存器吧,找書冊看寄存器部分
回復

使用道具 舉報

ID:234075 發表于 2019-3-21 21:02 | 顯示全部樓層
錯誤提示和你描述的一樣,IOCLR和IOSET不管是什么,你既然引用了,就必須在引用之前進行定義,至于你問需要引用哪個文件,你這個程序從哪兒來的?你到哪兒找,除了寫這個程序的人,名稱、含義、庫函數大都是根據個人喜好進行命名的,所以你的這個問題別人解答不了。
從程序判斷,這兩個應該定義的是引腳的IO接口
回復

使用道具 舉報

ID:136106 發表于 2019-3-21 22:33 | 顯示全部樓層
你的頭文件有沒有定義并且包含進來?
回復

使用道具 舉報

ID:365802 發表于 2019-3-22 08:24 | 顯示全部樓層
看起來是控制的IO腳, 看看實際的電路定義一下就好.
回復

使用道具 舉報

ID:18297 發表于 2019-3-22 10:21 | 顯示全部樓層
SSD1331.c(1241): error C202: 'IOCLR': undefined identifier
SSD1331.c(1242): error C202: 'IOSET': undefined identifier
SSD1331.c(1243): error C202: 'IOCLR': undefined identifier
這個需要看你的硬件連接,IOCLR接單片機的哪個引腳,就定義哪個?
如#define IOCLR P2^2
如果程序是別人的,可能硬件連接不一樣,一定要按照自己的電路板來定義,不然編譯正確了,功能也是不對的。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精产国产伦理一二三区 | 日韩色图在线观看 | 精品国产乱码久久久久久a丨 | a级片网站 | 亚洲高清av | 国产98在线 | 免费, | 午夜男人免费视频 | 国产精品一区二区三区在线播放 | 日日夜夜狠狠操 | 亚洲视频手机在线 | 亚洲一区二区三区桃乃木香奈 | 成年人在线观看 | www.色.com| 永久www成人看片 | 日本激情视频中文字幕 | 国产自产c区 | 欧美一区二区三区在线观看视频 | 午夜精品在线 | 亚洲成人精选 | 亚洲精品888| 亚洲成人一区二区 | 久久精品—区二区三区 | 国产sm主人调教女m视频 | 久久99精品久久久久久青青日本 | 四虎永久免费在线 | 一二三区av | 亚洲视频在线观看 | а√中文在线8 | 久久精品国产久精国产 | 国产女人与拘做受视频 | 欧美综合国产精品久久丁香 | 成人欧美一区二区三区在线播放 | 色免费在线视频 | 亚洲精品视频一区 | 神马久久久久久久久久 | av网站免费观看 | 韩日在线视频 | 日韩亚洲一区二区 | 国产精品一区在线 | 国产精品中文字幕在线播放 | 久久久久久国产精品mv |