腰椎間盤突出癥是一種常見病,嚴重影響患者的工作和生活。本文研究的腰椎復位機器人與牽引床配合使用,由牽引床實現對病人腰椎的縱向牽引,復位機器人把壓力加載到椎間盤突出部位,使得突出的椎間盤還納。本文進行了機器人總體方案的設計,運動機構的設計,動力源的選取和控制系統的設計。本文研究的腰椎復位機器人能夠代替人工手法治療腰椎間盤突出癥,可以提高治療效果,具有良好的應用前景。
上傳時間: 2013-11-07
上傳用戶:13788529953
本章主要介紹51系列單片機系統擴展問題,在本章中要研究較多的硬件方面及硬軟結合方面的問題,本章與第一章關系密切,在學習本章內容之前,要先明確51系列單片機本身的系統資源,可先復習一下前面幾章的有關單片機硬件組成方面的內容。 本章將介紹以下具體內容: 系統擴展的含義、單片機的地址總線和數據總線、常見系統擴展電路舉例。§7.0 前言 1.系統擴展的含義 單片機中雖然已經集成了CPU、I/O口、定時器、中斷系統、存儲器等計算機的基本部件(即系統資源),但是對一些較復雜應用系統來說有時感到以上資源中的一種或幾種不夠用,這就需要在單片機芯片外加相應的芯片、電路,使得有關功能得以擴充,我們稱為系統擴展(即系統資源的擴充)。 2.系統擴展分類----單一功能的擴展 綜合功能的擴展3.系統擴展需要解決的問題---- 單片機與相應芯片的接口電路連接(即地址總線、數據總線、控制總線的連接)與編程。4.單片機的地址總線和數據總線 51系列單片機沒有專用的對外地址總線和數據總線,其P0口和P2口既是通用I/O口,同時P0口還是分時復用的雙向數據總線和低8位地址總線(一般需要加一級鎖存器),而P2口則是高8位地址總線5.常見系統擴展電路(1)單一功能的系統擴展 存儲器的擴展(程序存儲器、數據存儲器、E2PROM ) 外部中斷源的擴展(簡單門電路) 并行口的擴展(8155)(2)綜合功能的擴展 外部RAM、定時器、并行口擴展(8155) 存儲器、并行口、定時器擴展(多芯片)7.1.1 程序存儲器的擴展.程序存儲器的作用----存放程序代碼或常數表格 .擴展時所用芯片----一般用只讀型存儲器芯片(可以是EPROM、E2PROM、 FLASH芯片等)。 .擴展電路連接 ---- 用EPROM 2764擴展程序存儲器。 .存儲器地址分析----究竟單片機輸出什么地址值時,可以指向存儲器中的某一單元。
上傳時間: 2013-10-19
上傳用戶:zhaoq123
為了提高學生的數字電子技術綜合實踐能力,設計交通信號燈自動控制數字電子技術實驗電路。選用D觸發器和555定時器作為主要器件,利用組合邏輯電路、時序邏輯電路和555定時器等方面的數字電路理論,將扭環形計數器應用到十字路口交通信號燈自動控制電路中,并利用Multisim作為設計工具進行仿真。
上傳時間: 2013-11-16
上傳用戶:ouyangmark
實時程序,對于初學者可以看看 數字I/O的使用 定時器的使用 中斷 與PC機進行RS232通信
標簽: 程序
上傳時間: 2013-12-26
上傳用戶:vodssv
約瑟夫問題有原始的約瑟夫和發展了的約瑟夫兩種。 原始的約瑟夫的描述: 古代某法官要判決N個犯人的死刑,他有一條荒唐的法律,將犯人站成一個圓圈,從第S個人開始數起,每數到第D個犯人,就拉出來處決,然后再數D個,數到的人再處決———直到剩下的最后一個可赦免。 發展的約瑟夫的描述: 古代某法官要判決N個犯人的死刑,但這N個人每人持有一個密碼,他有一條荒唐的法律,將犯人站成一個圓圈,法官先給出一個密碼M,從第S個人開始數起,每數到第M個犯人,就拉出來處決,再根據這個人所持有的密碼F,然后再數F個,數到的人再處決,以此類推———直到剩下的最后一個可赦免。
標簽: 發展
上傳時間: 2014-01-13
上傳用戶:moshushi0009
迄今為止,本書已介紹了可在Microsoft Wi n d o w s操作系統中使用的全部網絡A P I函數。 利用這些函數,我們的應用程序可通過網絡,建立與其他程序的通信聯系。在那些討論中, 我們在很大程度上將重點放在七層O S I模型的應用層和表示層上面
標簽:
上傳時間: 2015-07-08
上傳用戶:royzhangsz
struts的詳細說明,是struts的經典經驗集合,對于做web開發的技術人員來說恨合適d o dio 哦!感覺寫的恨不錯就發上來了!
標簽: struts
上傳時間: 2016-01-01
上傳用戶:懶龍1988
有編號分別為 0,1,2,3,4 的五本書,準備分給 A, B, C, D, E 五個人,每個人閱讀興趣用一個二維數組加以描述,輸出所有分書方案,讓人人皆大歡喜。
標簽: 分
上傳時間: 2016-10-22
上傳用戶:hongmo
計算這個智力題: 在這個乘法算式里,每一個字母代表著0-9中的一個數,不同字母代表不同數。 A B C D E F G H * A J --------------------- E J A H F D G K C B D F H A J E C --------------------- C C C C C C C C C 請問,C 代表哪個數字?
上傳時間: 2013-12-30
上傳用戶:stampede
#include <malloc.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define NULL 0 #define MaxSize 30 typedef struct athletestruct /*運動員*/ { char name[20]; int score; /*分數*/ int range; /**/ int item; /*項目*/ }ATH; typedef struct schoolstruct /*學校*/ { int count; /*編號*/ int serial; /**/ int menscore; /*男選手分數*/ int womenscore; /*女選手分數*/ int totalscore; /*總分*/ ATH athlete[MaxSize]; /**/ struct schoolstruct *next; }SCH; int nsc,msp,wsp; int ntsp; int i,j; int overgame; int serial,range; int n; SCH *head,*pfirst,*psecond; int *phead=NULL,*pafirst=NULL,*pasecond=NULL; void create(); void input () { char answer; head = (SCH *)malloc(sizeof(SCH)); /**/ head->next = NULL; pfirst = head; answer = 'y'; while ( answer == 'y' ) { Is_Game_DoMain: printf("\nGET Top 5 when odd\nGET Top 3 when even"); printf("\n輸入運動項目序號 (x<=%d):",ntsp); scanf("%d",pafirst); overgame = *pafirst; if ( pafirst != phead ) { for ( pasecond = phead ; pasecond < pafirst ; pasecond ++ ) { if ( overgame == *pasecond ) { printf("\n這個項目已經存在請選擇其他的數字\n"); goto Is_Game_DoMain; } } } pafirst = pafirst + 1; if ( overgame > ntsp ) { printf("\n項目不存在"); printf("\n請重新輸入"); goto Is_Game_DoMain; } switch ( overgame%2 ) { case 0: n = 3;break; case 1: n = 5;break; } for ( i = 1 ; i <= n ; i++ ) { Is_Serial_DoMain: printf("\n輸入序號 of the NO.%d (0<x<=%d): ",i,nsc); scanf("%d",&serial); if ( serial > nsc ) { printf("\n超過學校數目,請重新輸入"); goto Is_Serial_DoMain; } if ( head->next == NULL ) { create(); } psecond = head->next ; while ( psecond != NULL ) { if ( psecond->serial == serial ) { pfirst = psecond; pfirst->count = pfirst->count + 1; goto Store_Data; } else { psecond = psecond->next; } } create(); Store_Data: pfirst->athlete[pfirst->count].item = overgame; pfirst->athlete[pfirst->count].range = i; pfirst->serial = serial; printf("Input name:) : "); scanf("%s",pfirst->athlete[pfirst->count].name); } printf("\n繼續輸入運動項目(y&n)?"); answer = getchar(); printf("\n"); } } void calculate() /**/ { pfirst = head->next; while ( pfirst->next != NULL ) { for (i=1;i<=pfirst->count;i++) { if ( pfirst->athlete[i].item % 2 == 0 ) { switch (pfirst->athlete[i].range) { case 1:pfirst->athlete[i].score = 5;break; case 2:pfirst->athlete[i].score = 3;break; case 3:pfirst->athlete[i].score = 2;break; } } else { switch (pfirst->athlete[i].range) { case 1:pfirst->athlete[i].score = 7;break; case 2:pfirst->athlete[i].score = 5;break; case 3:pfirst->athlete[i].score = 3;break; case 4:pfirst->athlete[i].score = 2;break; case 5:pfirst->athlete[i].score = 1;break; } } if ( pfirst->athlete[i].item <=msp ) { pfirst->menscore = pfirst->menscore + pfirst->athlete[i].score; } else { pfirst->womenscore = pfirst->womenscore + pfirst->athlete[i].score; } } pfirst->totalscore = pfirst->menscore + pfirst->womenscore; pfirst = pfirst->next; } } void output() { pfirst = head->next; psecond = head->next; while ( pfirst->next != NULL ) { // clrscr(); printf("\n第%d號學校的結果成績:",pfirst->serial); printf("\n\n項目的數目\t學校的名字\t分數"); for (i=1;i<=ntsp;i++) { for (j=1;j<=pfirst->count;j++) { if ( pfirst->athlete[j].item == i ) { printf("\n %d\t\t\t\t\t\t%s\n %d",i,pfirst->athlete[j].name,pfirst->athlete[j].score);break; } } } printf("\n\n\n\t\t\t\t\t\t按任意建 進入下一頁"); getchar(); pfirst = pfirst->next; } // clrscr(); printf("\n運動會結果:\n\n學校編號\t男運動員成績\t女運動員成績\t總分"); pfirst = head->next; while ( pfirst->next != NULL ) { printf("\n %d\t\t %d\t\t %d\t\t %d",pfirst->serial,pfirst->menscore,pfirst->womenscore,pfirst->totalscore); pfirst = pfirst->next; } printf("\n\n\n\t\t\t\t\t\t\t按任意建結束"); getchar(); } void create() { pfirst = (struct schoolstruct *)malloc(sizeof(struct schoolstruct)); pfirst->next = head->next ; head->next = pfirst ; pfirst->count = 1; pfirst->menscore = 0; pfirst->womenscore = 0; pfirst->totalscore = 0; } void Save() {FILE *fp; if((fp = fopen("school.dat","wb"))==NULL) {printf("can't open school.dat\n"); fclose(fp); return; } fwrite(pfirst,sizeof(SCH),10,fp); fclose(fp); printf("文件已經成功保存\n"); } void main() { system("cls"); printf("\n\t\t\t 運動會分數統計\n"); printf("輸入學校數目 (x>= 5):"); scanf("%d",&nsc); printf("輸入男選手的項目(x<=20):"); scanf("%d",&msp); printf("輸入女選手項目(<=20):"); scanf("%d",&wsp); ntsp = msp + wsp; phead = (int *)calloc(ntsp,sizeof(int)); pafirst = phead; pasecond = phead; input(); calculate(); output(); Save(); }
標簽: 源代碼
上傳時間: 2016-12-28
上傳用戶:150501