亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標題:
這個單片機程序怎樣跳出第三個while循環?幫忙看一下
[打印本頁]
作者:
gpm
時間:
2018-12-3 00:58
標題:
這個單片機程序怎樣跳出第三個while循環?幫忙看一下
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit SHCP=P3^6;//595的移位信號
sbit STCP=P3^5;//是595的鎖存信號
sbit SDA=P3^4;//紅數據
sbit IA=P1^0;//行控制線A
sbit IB=P1^1;//行控制線B
sbit IC=P1^2;//行控制線C
/********************************************************************/
#define scan0 {IA=0;IB=0;IC=0;}
#define scan1 {IA=1;IB=0;IC=0;}
#define scan2 {IA=0;IB=1;IC=0;}
#define scan3 {IA=1;IB=1;IC=0;}
#define scan4 {IA=0;IB=0;IC=1;}
#define scan5 {IA=1;IB=0;IC=1;}
#define scan6 {IA=0;IB=1;IC=1;}
#define scan7 {IA=1;IB=1;IC=1;}
#define light 3
extern uint uiAllData; //定義亮度
uchar code hanzi[]; //漢字字模
uchar Move,Speed,line,tome_count; //(移位 速度 行 ) 定義
uint zimuo; //字模計數器
uint uiAllData;
uchar BUFF[10]; //緩存
void DelayMs(void); // 延時
void in_data(); // 調整移動數據
void rxd_data(); // 發送移動數據
uchar time_count=0; //計數
void rxd_data1(); // 發送移動數據
/******************************************************/
/*****不影響其他端口的掃描*************************/
void scan(unsigned char Value)
{switch(Value)
{ case 0: scan0;break;
case 1: scan1;break;
case 2: scan2;break;
case 3: scan3;break;
case 4: scan4;break;
case 5: scan5;break;
case 6: scan6;break;
case 7: scan7;break;
default:break;
}
}
/**************************延時***********************/
void DelayMs(void)
{
uchar TempCyc;
for(TempCyc=250;TempCyc>1;TempCyc--)
{;}
}
/********************************************/
/*主函數*/
void main()
{
Move=0;
zimuo=0;
while(1)
{
//利用sizeof()語句 運算字幕有效數據的總數;
while(zimuo<1024)//2048)//定義顯示字幕數據的長度 2048/32=64 即顯示完64個16*16大小的字符后 重新循環
{
while(Move<16) //數據移位。
{
for(Speed=0;Speed<3;Speed++) //移動速度控制
{
for(line=0;line<8;line++)
{
in_data(); //調整移動數據
rxd_data(); //裝載移動數據
scan(line); //輸出行掃描
STCP=1;//鎖存
STCP=0;
DelayMs(); //延時,等待一段時間,讓這列顯示的內容在人眼內產生“視覺暫留”現象。
DelayMs();
}
}
Move++; //移動一步
}
Move=0;
zimuo=zimuo+64; //換下一個字 這里不在移動地址 就實現了靜態顯示
}
TMOD=0x01; //定時器0 16位定時定時器1方式2
TH0=0x4c; //50ms
TL0=0x00;
TR0=1; //開定時器計數
ET0=1; //開定時器中斷
EA=1; //開中斷
while(tome_count<9) //怎么樣跳出這個循環????????
{
}
zimuo=0;
}
}
/**********************************************************/
void in_data(void) //調整數據一個屏2個字的數據
{
char s;
for(s=2;s>=0;s--) //一個屏能顯示4個字 取最前面的字發送給595的最前面
{ //zimuo 是個計算顯示到哪個字的計數器 s是取4個字的循環 line是顯示到哪一行 根據這幾個參數計算出一個屏中現在需要顯示的數據 放入BUFF 內存中 等待發送給595
BUFF[2*s]=hanzi[zimuo+32*s+2*line]; //要知道為什么這么算就需要知道取模的方向和原理 一行有8個字節 (一個中文16*16的字 一行有2個字節)
BUFF[2*s+1]=hanzi[zimuo+1+32*s+2*line];//把一個字的首字節放入BUFF[0]中 后面一個字節放入BUFF[1] 以此類推剩下的3個字
}
}
/***********************發送移動的數據****************************/
void rxd_data(void) //串行發送數據
{
uchar s;
uchar temp,k;
for(s=0;s<4;s++) //發送4字節數據
{
temp=BUFF[s];
temp=255-temp;
SDA=0;
for(k=0;k<8;k++)//一個字節8位 發送給595
{
SHCP=0; //上升沿移位595
SDA=(bit)(temp&0x01);//通過IO口送一個位給 595 0x01
temp=temp>>1; //字節移位 準備送下一位
SHCP=1;
}
}
}
void Timer0Interrupt(void) interrupt 1 //定時器中斷
{
TH0 = 0x04C;//定時50MS 這里的晶振是18.432M 測試無需理會晶振大小
TL0 = 0x000;
time_count++;
if(time_count>8)//發送一次數據
{
time_count=0;
line++; //下一行
if(line>8) //共16行
{
line=0; //重新移動
}
rxd_data1();//發送數據
scan(line); //打開行掃描
STCP=1;//鎖存
STCP=0;
}
}
void rxd_data1(void) //串行發送數據
{
uchar s;
uchar k;
for(s=0;s<4;s++)//發送4字節數據 一行4個字節
{
for(k=0;k<8;k++) //一個字節8位
{
SHCP=0; //上降沿移位595
SDA=1;
SHCP=1;
}
}
}
const uchar code hanzi[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"未命名文件",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"未命名文件",0*/
0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,
0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,/*"未命名文件",0*/
0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,
0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,/*"未命名文件",0*/
0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,
0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,/*"未命名文件",0*/
0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,
0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,/*"未命名文件",0*/
0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,
0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,/*"未命名文件",0*/
0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,
0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03,/*"未命名文件",0*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,/*"未命名文件",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"未命名文件",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"未命名文件",0*/
0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,/*"未命名文件",0*/
0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,/*"未命名文件",0*/
0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"未命名文件",0*/
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*"未命名文件",0*/
};
復制代碼
作者:
謝小康4
時間:
2018-12-3 08:39
當while()中的語句為真時,執行一遍{}里的內容,直到()內不為真,退出該循環,執行下一步指令
作者:
phang
時間:
2018-12-3 09:45
第3個while里Move++,加到=16跳出來,又被你Move=0了,那就被你摁在第2和第3個while了。。
作者:
yousunny
時間:
2018-12-3 09:53
Move++; //移動一步
這里一直加,到最后,肯定就跳出循環了
作者:
xuyaqi
時間:
2018-12-3 09:59
這是循環成立的條件:while(Move<16)
每循環一次 Move++;
循環16次,就不滿足循環條件,跳出循環。
作者:
冰冰潔潔
時間:
2018-12-3 10:34
while(tome_count<9) //怎么樣跳出這個循環????????
{
}
zimuo=0;
}
}這個不是定義嗎,while(tome_count<9),就是計數大于9后為假,跳出。
作者:
gpm
時間:
2018-12-3 11:18
是第四個while循環出不來
作者:
15779064856
時間:
2018-12-3 12:20
這是循環成立的條件:while(Move<16) 每循環一次 Move++; 循環16次,就不滿足循環條件,就是讓循環的條件不滿足循環
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1