第十個要介紹的是字符顯示函數LCD_ShowChar,該函數同前面OLED 模塊的字符顯示函數差不多,但是這里的字符顯示函數多了1 個功能,就是可以以疊加方式顯示,或者以非疊加方式顯示。疊加方式顯示多用于在顯示的圖片上再顯示字符。非疊加方式一般用于普通的顯示。
該函數實現代碼如下:
//在指定位置顯示一個字符
//x,y:起始坐標
//num:要顯示的字符:" "--->"~"
//size:字體大小 12/16/24
//mode:疊加方式(1)還是非疊加方式(0)
void LCD_ShowChar(u16 x,u16 y,u8 num,u8 size,u8 mode)
{
u8 temp,t1,t; u16 y0=y;
u8 csize=(size/8+((size%8)?1:0))*(size/2);//得到字體一個字符對應點陣集所占的字節數
//設置窗口
num=num-' ';//得到偏移后的值
for(t=0;t
{
if(size==12)temp=asc2_1206[num][t]; //調用 1206 字體
else if(size==16)temp=asc2_1608[num][t]; //調用 1608 字體
else if(size==24)temp=asc2_2412[num][t]; //調用 2412 字體
else return; //沒有的字庫
for(t1=0;t1<8;t1++)
{
if(temp&0x80)LCD_Fast_DrawPoint(x,y,POINT_COLOR);
else if(mode==0)LCD_Fast_DrawPoint(x,y,BACK_COLOR);
temp<<=1;
y++;
if(y>=lcddev.height)return; //超區域了
if((y-y0)==size)
{
y=y0; x++;
if(x>=lcddev.width)return; //超區域了
break;
}
}
}
}
在 LCD_ShowChar 函數里面,我們采用快速畫點函數 LCD_Fast_DrawPoint 來畫點顯示字符,該函數同LCD_DrawPoint一樣,只是帶了顏色參數,且減少了函數調用的時間,詳見本例程源碼。該代碼中我們用到了三個字符集點陣數據數組 asc2_2412、asc2_1206 和 asc2_1608,這幾個字符集的點陣數據的提取方式,同十七章介紹的提取方法是一模一樣的。詳細請參考第十七章。
最后,我們再介紹一下TFTLCD 模塊的初始化函數LCD_Init,該函數先初始化STM32與TFTLCD 連接的 IO口,并配置 FSMC 控制器,然后讀取 LCD 控制器的型號,根據控制 IC 的型號執行不同的初始化代碼,其簡化代碼如下:
void LCD_Init(void)
{
vu32 i=0;
GPIO_InitTypeDef GPIO_InitStructure;
FSMC_NORSRAMInitTypeDef FSMC_NORSRAMInitStructure;
FSMC_NORSRAMTimingInitTypeDef readWriteTiming;
FSMC_NORSRAMTimingInitTypeDef writeTiming;
// GPIO,FSMC 時鐘使能
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB|RCC_AHB1Periph_GPIOD
|RCC_AHB1Periph_GPIOE|RCC_AHB1Periph_GPIOF|RCC_AHB1Periph_GPIOG,
ENABLE);//使能 PD,PE,PF,PG時鐘
RCC_AHB3PeriphClockCmd(RCC_AHB3Periph_FSMC,ENABLE);//使能 FSMC 時鐘
// GPIO 初始化設置
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;//PB15 推挽輸出,控制背光
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通輸出模式
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽輸出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化 //PB15 推挽輸出,控制背光
GPIO_InitStructure.GPIO_Pin = (3<<0)|(3<<4)|(7<<8)|(3<<14);
//PD0,1,4,5,8,9,10,14,15 AF OUT
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//復用輸出
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽輸出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
GPIO_Init(GPIOD, &GPIO_InitStructure);//初始化
GPIO_InitStructure.GPIO_Pin = (0X1FF<<7);//PE7~15,AF OUT
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//復用輸出
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽輸出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
GPIO_Init(GPIOE, &GPIO_InitStructure);//初始化
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;//PF12,FSMC_A6
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//復用輸出
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽輸出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
GPIO_Init(GPIOF, &GPIO_InitStructure);//初始化
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;//PF12,FSMC_A6
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//復用輸出
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽輸出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
GPIO_Init(GPIOG, &GPIO_InitStructure);//初始化
上一篇:STM32f4---TFTLCD顯示實驗代碼(05)
下一篇:STM32f4---TFTLCD顯示實驗代碼(04)
推薦閱讀
史海拾趣
由于ACE Technology Co., Ltd. 公司的發展故事涉及具體的事件和詳細經過,而這些信息可能并不公開或詳細記錄,因此我無法為您直接提供5個具體的電子行業里ACE公司的發展故事。但我可以基于已知的信息,為您概述ACE公司的一些可能的發展歷程和關鍵點,這些可以作為您編寫故事的參考。
- 創業初期與核心技術積累
ACE Technology Co., Ltd. 成立于2001年,早期便專注于電源管理IC和內存類IC的研發。公司的創始團隊擁有深厚的電子行業經驗和技術背景,他們看到了電源管理和內存技術的巨大市場潛力,并決定將其作為公司的核心競爭力。在公司成立初期,ACE投入大量資源進行技術研發,逐步積累了寶貴的技術專利和知識產權。
- 全球化布局與研發中心建設
隨著公司業務的不斷擴展,ACE意識到全球化布局的重要性。于是,公司決定在美國硅谷設立研發中心,利用當地的人才和技術優勢,進一步提升IC設計水平。同時,為了降低研發成本并更好地服務亞洲市場,ACE還在印度建立了另一個研發中心。這些研發中心的建立,為公司的技術創新和產品升級提供了有力支持。
- 市場拓展與合作伙伴關系建立
在產品研發的同時,ACE也注重市場拓展。公司積極參加各種行業展會和交流活動,與國內外眾多客戶建立了合作關系。特別是在中國市場,ACE與深圳市欣諾泰電子有限公司等代理商建立了長期穩定的合作關系,通過他們的渠道將產品推廣至本土工程師和廠商。這些合作伙伴關系的建立,為公司的業務發展奠定了堅實基礎。
- 產品升級與品牌塑造
隨著技術的不斷進步和市場需求的變化,ACE不斷對產品進行升級和優化。公司注重產品性能和穩定性的提升,同時關注客戶反饋和市場需求,不斷優化產品設計。此外,ACE還加強了品牌塑造工作,通過提升品牌形象和知名度,進一步增強了公司在行業內的競爭力。
- 應對挑戰與未來發展規劃
在電子行業的激烈競爭中,ACE也面臨著諸多挑戰。為了應對這些挑戰,公司加強了內部管理,提升了運營效率。同時,ACE還制定了未來發展規劃,包括進一步拓展國際市場、加強技術創新和研發投入、優化產品線等。這些舉措將有助于公司在未來繼續保持競爭優勢并實現可持續發展。
以上是基于已知信息對ACE公司可能的發展歷程和關鍵點的概述。如果需要更具體的發展故事,建議查閱公司官方網站、行業報告或相關新聞報道以獲取更多詳細信息。
Dongguan City Niuhang Electronics Co.LTD成立于2012年,當時的中國電子行業正處于快速發展期。創始人李小芹憑借對半導體技術的深刻理解和市場需求的敏銳洞察,決定專注于二極管、橋式整流器等產品的研發與封裝。公司成立初期,面臨著資金短缺、技術儲備不足等挑戰,但李小芹憑借堅定的信念和不懈的努力,帶領團隊攻克了一個又一個技術難關,逐步在市場上樹立了良好的口碑。
APEM公司的創始人基恩·羅杰羅,在20世紀50年代初,看到了美國產品主導法國市場的商機。為了解決產品維修和備件訂購的難題,他決定自己生產開關。羅杰羅的開關產品在尺寸和操作方式上與美國產品相似,但價格更親民,交貨時間更短。這一創新舉措使APEM迅速在市場上站穩腳跟,為后續的發展奠定了堅實基礎。
在追求經濟效益的同時,臺灣誠陽(BC)公司也積極履行企業社會責任。公司關注環保和可持續發展,致力于推廣綠色電子產品和節能減排技術。同時,公司還積極參與社會公益事業,為當地社區的發展做出貢獻。這種對社會責任的承擔和關注,使得臺灣誠陽在業界樹立了良好的形象,贏得了社會各界的認可和尊重。
請注意,以上故事僅為虛構示例,并不代表臺灣誠陽(BC)公司或任何真實公司的實際情況。如果您對該公司有進一步的了解需求,建議直接訪問其官方網站或查閱相關新聞報道。
Axiohm公司最初是一家小型電子元件制造商,面對激烈的市場競爭,公司創始人李先生意識到唯有技術創新才能脫穎而出。他帶領團隊投入大量研發資源,成功開發出一種具有高性價比的新型半導體材料。這一創新不僅降低了生產成本,還提高了產品的性能穩定性,迅速贏得了市場的青睞。隨著銷量的不斷增長,Axiohm逐漸在電子行業中嶄露頭角。
Axiohm公司最初是一家小型電子元件制造商,面對激烈的市場競爭,公司創始人李先生意識到唯有技術創新才能脫穎而出。他帶領團隊投入大量研發資源,成功開發出一種具有高性價比的新型半導體材料。這一創新不僅降低了生產成本,還提高了產品的性能穩定性,迅速贏得了市場的青睞。隨著銷量的不斷增長,Axiohm逐漸在電子行業中嶄露頭角。
Speech Recognizer:sapi能夠在wince中使用嗎? Licensing Model for Windows CE 中 Professional版本中包含sapi5.0和 Speech Recognizer 但是Microsoft English (US) Windows CE Speech Recognizer (available in 4.2 only) 是說只能在4.2下使用是什么意思?還是4.2以 ...… 查看全部問答∨ |
|
wifi與BT用的模式都是spi的。兩者共用一clk,但是不同的天線。BT與wifi之間相連接的是BT_STATE,WL_ACTIVE,BT_PRIORITY,如果把這三線去掉,單獨當其中任何一個都是可以工作的,但是如果連接起來,我的wifi是可以找到無線網絡,并且能連接上,但是就 ...… 查看全部問答∨ |
|
城市廣告燈大多數只在夜晚12點鐘以前起到較好的宣傳作用,子夜一過,行人稀少,也就失去了廣告的意義。該廣告燈自動控制電路能在傍晚天漸黑時自動接通廣告燈牌的電源,同時開始計時,待4~6小時后于子夜自動切斷電源,從而實現全自動控制和節電的目 ...… 查看全部問答∨ |
|
ARM Cortex-M4 處理器競爭白熱化近幾年ARM 獨領風騷,2010 年,ARM 在32/64 bit MCU 及MPU 架構中的市場占有率最多,達23.5%,據Semicast 統計,2010 年基于ARM 的市場規模已達到200 億美元,而Cortex-M 架構更是引領了微控制器市場的新風尚,今年 ...… 查看全部問答∨ |
吼吼吼!launchPad收到嘍!還有Touch BoosterPack呢!!!哈哈哈!有得玩兒嘍! 6月7號考試通過滴,第四批頭一個就是俺,終于來啦! Ti的速度的確給力啊!!! … 查看全部問答∨ |
如題,LPC Xpresso-cn的IAR開發環境在網上找不到,本人急用,麻煩大神們給一份LPC Xpresso-cn的IAR開發環境. 郵箱:531604330@qq.com 在線等!!! … 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- 利用驗證框架 JAIST揭示開源自動駕駛系統的安全漏洞
- 現代汽車集團擬采用VR模擬器替代道路測試 提升未來車型的競爭力
- 研究人員開發光驅動致動器 可用于驅動水下機器人
- 吉利將發射“千里浩瀚”衛星,實現輔助駕駛系統與衛星功能深度融合
- 以鴻道工業操作系統為核心 打造工業智能機器人新生態
- UNIST研發出新表面處理技術 延長下一代鋰金屬電池的壽命
- 車載SerDes芯片行業的"DeepSeek"時刻——瑞發科HSMT SerDes閃耀2025上海車展
- 豐田顛覆傳統,固態電池明年就能量產,最受傷的將是中國?
- 基于恩智浦與onsemi的駕駛員監控系統方案
- 機器人行業周報|5月27日:宇樹G1格斗賽、人形機器人技術與場景融合趨勢