74HC573是8位鎖存器,鎖存控制端高電平時(shí),傳送數(shù)據(jù),低電平時(shí)鎖存。所以,寫(xiě)程序很簡(jiǎn)單,無(wú)所謂真值表和時(shí)序圖的。而且,用74HC573做鎖存器的程序,在百度里可以搜索無(wú)數(shù)的答案的。

成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的孝感網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
例如,P0為數(shù)據(jù)口,P2.6為鎖存控制端,
先定義控制端
sbit LE=P2^6;
則鎖存過(guò)程
P0=xdata;//P0口輸出數(shù)據(jù)
LE=1;//傳送數(shù)據(jù)
LE=0;//鎖存
這就成了,非常簡(jiǎn)單。可卻被你搞得挺神密,挺難,挺麻煩的。
上升沿觸發(fā)是當(dāng)信號(hào)有上升沿時(shí)的開(kāi)關(guān)動(dòng)作,當(dāng)電位由低變高而觸發(fā)輸出變化的就叫上升沿觸發(fā)。也就是當(dāng)測(cè)到的信號(hào)電位是從低到高也就是上升時(shí)就觸發(fā),叫做上升沿觸發(fā)。工作原理:SD 和RD 接至基本RS 觸發(fā)器的輸入端,它們分別是預(yù)置和清零端,低電平有效。當(dāng)SD=0且RD=1時(shí),不論輸入端D為何種狀態(tài)。都會(huì)使Q=1,Q=0,即觸發(fā)器置1;當(dāng)SD=1且RD=0時(shí),觸發(fā)器的狀態(tài)為0,SD和RD通常又稱為直接置1和置0端。我們?cè)O(shè)它們均已加入了高電平,不影響電路的工作。電路結(jié)構(gòu) : 該觸發(fā)器由6個(gè)與非門(mén)組成,其中G1和G2構(gòu)成基本RS觸發(fā)器。工作過(guò)程如下:CP=0時(shí),與非門(mén)G3和G4封鎖,其輸出Q3=Q4=1,觸發(fā)器的狀態(tài)不變。同時(shí),由于Q3至Q5和Q4至Q6的反饋信號(hào)將這兩個(gè)門(mén)打開(kāi),因此可接收輸入信號(hào)D,Q5=D,Q6=Q5=D。
一、 什么是時(shí)序圖?
時(shí)序圖(Sequence Diagram),亦稱為序列圖、循序圖或順序圖,是一種UML交互圖。它通過(guò)描述對(duì)象之間發(fā)送消息的時(shí)間順序顯示多個(gè)對(duì)象之間的動(dòng)態(tài)協(xié)作。
時(shí)序圖是一個(gè)二維圖,橫軸表示對(duì)象,縱軸表示時(shí)間,消息在各對(duì)象之間橫向傳遞,依照時(shí)間順序縱向排列。
二、 時(shí)序圖的作用是什么?
1、展示對(duì)象之間交互的順序。將交互行為建模為消息傳遞,通過(guò)描述消息是如何在對(duì)象間發(fā)送和接收的來(lái)動(dòng)態(tài)展示對(duì)象之間的交互;
2、相對(duì)于其他UML圖,時(shí)序圖更強(qiáng)調(diào)交互的時(shí)間順序;
3、可以直觀的描述并發(fā)進(jìn)程。
三、 組成元素有哪些?
1. 角色(Actor)
系統(tǒng)角色,可以是人、機(jī)器、其他系統(tǒng)、子系統(tǒng);在時(shí)序圖中用表示。
2. 對(duì)象(Object)
(1)對(duì)象的三種命名方式
第一種方式包括對(duì)象名和類名,例如:直播課時(shí):課時(shí),在時(shí)序圖中,用“對(duì)象:類”表示;
第二種方式只顯示類名,即表示它是一個(gè)匿名對(duì)象,例如: :課程;在時(shí)序圖中,用“:類”表示;
第三種方式只顯示對(duì)象名不顯示類名,例如:講師;在時(shí)序圖中,用“對(duì)象”表示。
(2)命名方式的選擇
三種命名方式均可,哪種最容易讓閱讀該時(shí)序圖的人理解,就選擇哪種。
(3)對(duì)象的排列順序
對(duì)象的左右順序并不重要,但是為了作圖清晰整潔,通常應(yīng)遵循以下兩個(gè)原則:把交互頻繁的對(duì)象盡可能的靠攏;2.把初始化整個(gè)交互活動(dòng)的對(duì)象放置在最左端。
3. 生命線(Lifeline)
在時(shí)序圖中表示為從對(duì)象圖標(biāo)向下延伸的一條虛線,表示對(duì)象存在的時(shí)間。
4. 控制焦點(diǎn)(Focus of Control)
又稱為激活期,表示時(shí)間段的符號(hào),在這個(gè)時(shí)間段內(nèi)對(duì)象將執(zhí)行相應(yīng)的操作。它可以被理解成C語(yǔ)言語(yǔ)義中一對(duì)花括號(hào){ }中的內(nèi)容;用小矩形表示。
5. 消息(Message)
消息一般分為同步消息(Synchronous Message),異步消息(Asynchronous Message)和返回消息(Return Message)。
消息的發(fā)送者把控制傳遞給消息的接收者,然后停止活動(dòng),等待消息的接收者放棄或者返回控制。用來(lái)表示同步的意義;
消息發(fā)送者通過(guò)消息把信號(hào)傳遞給消息的接收者,然后繼續(xù)自己的活動(dòng),不等待接受者返回消息或者控制。異步消息的接收者和發(fā)送者是并發(fā)工作的。
返回消息表示從過(guò)程調(diào)用返回。
6. 自關(guān)聯(lián)消息
表示方法的自身調(diào)用或者一個(gè)對(duì)象內(nèi)的一個(gè)方法調(diào)用另外一個(gè)方法。
7. 組合片段
組合片段用來(lái)解決交互執(zhí)行的條件和方式,它允許在序列圖中直接表示邏輯組件,用于通過(guò)指定條件或子進(jìn)程的應(yīng)用區(qū)域,為任何生命線的任何部分定義特殊條件和子進(jìn)程。組合片段共有13種,名稱及含義如下:
常用組合片段舉例:
用來(lái)指明在兩個(gè)或更多的消息序列之間的互斥的選擇,相當(dāng)于經(jīng)典的if..else..
(1)抉擇(Alt)
抉擇在任何場(chǎng)合下只發(fā)生一個(gè)序列。 可以在每個(gè)片段中設(shè)置一個(gè)臨界來(lái)指示該片段可以運(yùn)行的條件。else 的臨界指示其他任何臨界都不為 True 時(shí)應(yīng)運(yùn)行的片段。如果所有臨界都為 False 并且沒(méi)有 else,則不執(zhí)行任何片段。
(2)選項(xiàng)(Opt)
包含一個(gè)可能發(fā)生或不發(fā)生的序列;
(3)循環(huán)(Loop)
片段重復(fù)一定次數(shù),可以在臨界中指示片段重復(fù)的條件。
(4)并行(Par)
四、 時(shí)序圖的繪制工具
時(shí)序圖的繪制工具有VISO、Rational Rose、StarUML、Web Sequence Diagrams、Timing Designer、Trufun Plato等,可任選其一。
五、 時(shí)序圖的畫(huà)法及實(shí)例
時(shí)序圖的繪制步驟可簡(jiǎn)單總結(jié)如下:
劃清邊界,識(shí)別交互的語(yǔ)境;
將所要繪制的交互場(chǎng)景中的角色以及對(duì)象梳理出來(lái);
從觸發(fā)整個(gè)交互的某個(gè)消息開(kāi)始,在生命線之間從上到下依次畫(huà)出所有消息,并注明每個(gè)消息的特性(如參數(shù)等)。
接下來(lái),我們按照上面所講的時(shí)序圖的繪制步驟,以學(xué)生在教務(wù)系統(tǒng)中查詢其課程的成績(jī)?yōu)槔瑏?lái)講解時(shí)序圖的繪制方法。
1、劃清邊界,識(shí)別交互的語(yǔ)境
所謂劃清邊界,就是要界定好自己所要畫(huà)的時(shí)序圖的范圍,“學(xué)生在教務(wù)系統(tǒng)中查詢其課程的成績(jī)”就是所要繪制的時(shí)序圖的交互內(nèi)容,不用往上延伸到用戶登錄,也不要往下延伸到下載成績(jī)單。
識(shí)別交互的語(yǔ)境,即是讀懂所要畫(huà)的時(shí)序圖的前提和背景。比如本例中,既然學(xué)生可以查詢成績(jī),那么該學(xué)生肯定已經(jīng)注冊(cè)并認(rèn)證過(guò)其身份,并可選擇其所考試的課程查詢相應(yīng)成績(jī)。
2、梳理角色和對(duì)象
在本例中,角色有學(xué)生,對(duì)象有教務(wù)系統(tǒng)、課程、成績(jī)。
對(duì)象的梳理是一個(gè)相對(duì)主觀的過(guò)程,比如本例中,課程以及成績(jī)分別作為了對(duì)象存在,也可以合并為數(shù)據(jù)庫(kù)這一個(gè)對(duì)象。
請(qǐng)注意:角色以及對(duì)象,都為名詞,動(dòng)詞不可作為角色和對(duì)象,如“成績(jī)查詢”不可作為對(duì)象。
3、添加消息
學(xué)生的登錄驗(yàn)證作為本時(shí)序圖的前置行為,可直接引用到本時(shí)序圖中,也可忽略不畫(huà);學(xué)生進(jìn)入成績(jī)查詢頁(yè)面后,頁(yè)面會(huì)加載本學(xué)生的成績(jī)查詢課程列表,并顯示出課程對(duì)應(yīng)的成績(jī);
#define LINE 5
int main(int argc, char *argv[])
{
int i,j;
i = -LINE;
printf("abs(%d) = %d\n",i,abs(i));
/*
*
***
*****
*******
*********
***********
*********
*******
*****
***
*
*/
for(i = -LINE ; i LINE+1; i++)
{
for(j = abs(i);j =0;j--)
printf(" ");
for(j = 0;j 2*LINE+1 - 2*abs(i);j++)
printf("*");
printf("\n");
}
printf("\n");
/*
*
***
*****
*******
*********
***********
*********
*******
*****
***
*
*/
for(i = -LINE ; i LINE+1; i++)
{
for(j = 0;j 2 * LINE+1 - 2*abs(i);j++)
printf("*");
printf("\n");
}
printf("\n");
/*
*
***
*****
*******
*********
***********
*********
*******
*****
***
*
*/
for(i = -LINE ; i LINE+1; i++)
{
for(j = 2*abs(i);j =0;j--)
printf(" ");
for(j = 0;j 2*LINE+1 - 2*abs(i);j++)
printf("*");
printf("\n");
}
printf("\n");
/*
***********
*********
*******
*****
***
*
***
*****
*******
*********
***********
*/
for(i = -LINE ; i LINE+1; i++)
{
for(j = LINE - abs(i);j =0;j--)
printf(" ");
for(j = 0;j 2*abs(i)+1;j++)
printf("*");
printf("\n");
}
printf("\n");
/*
******
******
******
******
******
******
******
******
******
******
*/
for(i = -LINE ; i LINE+1; i++)
{
for(j = LINE - abs(i);j =0;j--)
printf(" ");
for(j = 0;j LINE;j++)
printf("*");
printf("\n");
}
system("PAUSE");
return 0;
}
網(wǎng)頁(yè)標(biāo)題:c語(yǔ)言函數(shù)時(shí)序圖生成,時(shí)序圖編程
標(biāo)題URL:http://chinadenli.net/article36/hsjipg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、外貿(mào)建站、網(wǎng)站維護(hù)、定制開(kāi)發(fā)、品牌網(wǎng)站設(shè)計(jì)、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容