12864 c「程式設計開發」

2021-12-29 21:51:48 字數 3383 閱讀 4450

#define _lcd12864_c

#include "config.h"

#include "lcd12864.h"

/*************

測試lcd是否處於忙狀態

如果忙則返回0x80,否則返回0

**************/

unsigned char lcd_checkbusy()

/*********************************

向lcd寫入位元組資料

**********************************/

void lcd_writedata(unsigned char data)

/***********************************

從lcd中讀出資料

************************************/

unsigned char lcd_readdata()

/*************************************

想lcd中寫入指令**

**************************************/

void lcd_writecmd(unsigned char cmdcode)

/*************************************

向lcd指定起始位置寫入乙個字串

*************************************/

void lcd_writestr(unsigned char x,unsigned char y,unsigned char *str)

while(*str>0)

ea=1;

}/**************************************

為加速邏輯運算而設定的掩碼表,這是以犧牲空間而換取時間的辦法

***************************************/

code unsigned int masktab=;

/***************************************

向lcd指定座標寫入乙個象素,象素顏色有兩種,0代表白(無顯示),1代表黑(有顯示)

****************************************/

void lcd_putpixel(unsigned char x,unsigned char y,unsigned char color)

/******************************************

從lcd指定座標讀取象素顏色值

*******************************************/

unsigned char lcd_readpixel(unsigned char x,unsigned char y)

/***************************************

向lcd指定位置畫一條長度為length的指定顏色的水平線

****************************************/

void lcd_horiline(unsigned char x,unsigned char y,unsigned char length,unsigned char color)

for (x=x1;x<=x2;x++)

lcd_putpixel(x,y1,color);

}else

else

d_x=x1-x2;

x=x1;

y=y1;

lcd_putpixel(x,y,1);

if(temp&&(d_y<=d_x))

while(x!=x2)

else

lcd_putpixel(x,y,color);

}else if(temp&&(d_y>d_x))

while(y!=y2)

else

lcd_putpixel(x,y,color);

}else if(!temp&&(d_y<=d_x))

while(x!=x2)

else

lcd_putpixel(x,y,color);

}else if(!temp &&(d_y>d_x))

while(y!=y2)

else

lcd_putpixel(x,y,color);}}

}/*******************************************

向lcd指定左上角座標和右下角座標畫乙個指定顏色的矩形

********************************************/

void lcd_rectangle(unsigned char x0,unsigned char y0,unsigned char x1,unsigned char y1,unsigned char color)

if(y0>y1)

lcd_vertline(x0,y0,y1-y0+1,color);

lcd_vertline(x1,y0,y1-y0+1,color);

lcd_horiline(x0,y0,x1-x0+1,color);

lcd_horiline(x0,y1,x1-x0+1,color);

}/****************************************

對稱法畫圓的8個映象點

*****************************************/

void circledot(unsigned char x,unsigned char y,char xx,char yy,unsigned char color)//內部函式,對稱法畫圓的8個映象點

/******************************************

向lcd指定圓心座標畫乙個半徑為r的指定顏色的圓

*******************************************/

void lcd_circle(unsigned char x,unsigned char y,unsigned char r,unsigned char color)//中點法畫圓

{//中點法畫圓

unsigned char xx,yy;

char deltax,deltay,d;

xx=0;

yy=r;

deltax=3;

deltay=2-r-r;

d=1-r;

circledot(x,y,xx,yy,color);//對稱法畫圓的8個映象點

while (xx

C 核心程式設計和桌面應用開發

c 核心程式設計和桌面應用開發 01 第一章c 核心程式設計 1 1c 概述 01 課前準備.mp4 9.79m 02 對比軟體的使用.mp4 5.95m 03 c 概述.mp4 56.29m 04 第乙個程式helloworld.mp4 20.58m 05 物件導向的三大特性.mp4 23.09m...

標準C 開發入門與程式設計實踐

放大 標準c 開發入門與程式設計實踐 叢書名 c c 開發專家 編著者 白喬 出版社 電子工業出版社 isbn號 978 7 121 05227 9 首 印 2007 12 01 定 價 49.8 開 本 16 字 數 787.2千 470頁 點選數 11481 在蔚藍網上購買 在china pub...

程式設計開發經驗

重點內容 程式語言日新月異,它終歸是乙個工具,程式語言之間相互借鑑,設計思想有很多類似的地方。但選擇語言時,也要兼顧考慮自己的業務領域來選擇開發語言。如果效能不佳,就在應用層處理,別放在資料庫層。避免併發運算 單一責任,物件狀態盡量越少越好,實用才是硬道理。簡潔,組合,而非聚合 有些地方盡量不用注釋...