User Tag List

+ Trả lời chủ đề
Trang 1/2 12 CuốiCuối
Hiện kết quả từ 1 tới 10 của 18

Chủ đề: Một số Code C và ASM

  1. #1
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định Một số Code C và ASM

    #include <AT89X52.h>
    #include "D:\luu\GoldGift - 110404\Header\Define.H"
    #include "D:\luu\GoldGift - 110404\Header\ThisMachine.H"

    // Extern variable
    extern struct RoboDef ROBO_NAME;

    // Extern function
    extern void delaysec(unsigned char sec);
    extern void delaymsec(unsigned char msec);
    extern void SetSpeed(unsigned char motor, unsigned char dir, unsigned char speed);
    extern void SetCarSpeed(unsigned char ldir, unsigned char rdir, unsigned char lspeed, unsigned char rspeed);
    extern void Stop(void); // Dung
    extern void HoldStop(unsigned char times); // Ham cung
    extern void WaitFor(unsigned char stateNum, unsigned char _TIME_OUT);
    extern void GoAhead(unsigned char spd); // Di lui ve phia sau voi toc doc [spd]
    extern void GoBackward(unsigned char spd);
    extern void DisplayByte(unsigned char byte);
    extern void Display2Byte(unsigned char byte0,unsigned char byte1);
    // Define function
    void TakeGift(void);
    void PushGift(void);

    //Function Code


    void TakeGift(void){
    // Ha canh tay lay qua, di qua goc qua
    SetSpeed(MTR_LAY_QUA, DIR_DOWN ,SPD_NORMAL);
    Display2Byte(MTR_LAY_QUA, DIR_DOWN);
    delaysec(3);
    delaymsec(200);
    delaymsec(200);
    delaymsec(200);
    delaymsec(200);
    SetSpeed(MTR_LAY_QUA,DIR_STOP,SPD_NORMAL);
    delaymsec(100);
    // Nha day motor dau tay lay qua, tay tiep tuc ha xuong
    SetSpeed(MTR_DAU_TAY,DIR_DOWN,SPD_NORMAL);
    Display2Byte(MTR_DAU_TAY,DIR_DOWN);
    delaysec(2);
    SetSpeed(MTR_DAU_TAY,DIR_STOP,SPD_NORMAL);
    delaymsec(10);
    // Nang canh tay lay qua len
    SetSpeed(MTR_LAY_QUA,DIR_UP,SPD_NORMAL);
    Display2Byte(MTR_LAY_QUA,DIR_UP);
    WaitFor(TCH_TAY_LEN, (unsigned int)(2*_TOUCH_TIME_OUT));
    Display2Byte(MTR_LAY_QUA,DIR_STOP);
    SetSpeed(MTR_LAY_QUA,DIR_STOP,SPD_NORMAL);
    delaymsec(100);
    DisplayByte (0xCC);
    }

    // Day qua nock_out
    void PushGift(void) {
    // Phan nay phai o phan bo qua ghi diem chu? phai giu qua trong qua trinh di chuyen
    // Nha cho trung day de qua qua duoc
    SetSpeed(MTR_LAY_QUA, DIR_DOWN ,SPD_NORMAL);
    Display2Byte(MTR_LAY_QUA, DIR_DOWN);
    delaysec(1);
    // delaymsec(250);
    delaysec(1);
    SetSpeed(MTR_LAY_QUA,DIR_STOP,SPD_NORMAL);
    delaymsec(50);
    // Quan day vao motor dau tay lay qua
    SetSpeed(MTR_DAU_TAY, DIR_UP,SPD_NORMAL);
    Display2Byte(MTR_DAU_TAY,DIR_UP);
    delaysec(1);
    SetSpeed(MTR_DAU_TAY,DIR_STOP,SPD_NORMAL);

    DisplayByte(0xCC);
    delaymsec(50);
    // Nang san - ha canh tay
    //SetCarSpeed(DIR_HOLD, DIR_HOLD, 0, 0);
    SetSpeed(MTR_SAN, DIR_UP, SPD_NORMAL);
    Display2Byte(MTR_SAN,DIR_UP);
    WaitFor(TCH_NANG_SAN_XONG, _TOUCH_TIME_OUT);
    SetSpeed(MTR_SAN, DIR_STOP, SPD_NORMAL);
    delaysec(1); // on dinh co cau
    SetSpeed(MTR_KEO_QUA, DIR_UP, SPD_NORMAL);
    Display2Byte(MTR_KEO_QUA,DIR_UP);
    WaitFor(TCH_BO_QUA_XONG, (unsigned int)(5*_TOUCH_TIME_OUT));
    SetSpeed(MTR_KEO_QUA, DIR_STOP, SPD_NORMAL);
    DisplayByte(0xFE);
    delaymsec(100); // on dinh co cau
    GoAhead(SPD_MEDIUM);
    delaymsec(250); // giat lai 1/2s
    delaymsec(250); //
    HoldStop(200);
    }
    Vũ Trụ Nội Mạc Phi Phận Sự www.traveltovietnam.cc www.bookilook.com

  2. #2
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    Bố trí sensor của cirtechplus

    unsigned char code MSK_PS_AND[21] =
    { 0xFF, 0x0C, 0x0F, 0x0E, 0x0C, 0x0F, 0x0D, 0x0F, 0x0C, 0xC0, 0xC0,
    0xC0, 0x30, 0x30, 0x30, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C};
    */
    unsigned char code MSK_PS_OR[31] =
    { 0x00, 0xF3, 0xF0, 0xF1, 0xF3, 0xF0, 0xF2, 0xF0, 0xF3, 0x3F,
    0x3F, 0x3F, 0x3F, 0xCF, 0xCF, 0xCF, 0xCF, 0xF3, 0xF3, 0xF3,
    0xF3, 0xF3, 0xF3, 0xFE, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7F };

    unsigned char code MSK_PS_RETURN[31] =
    { 0xFF, 0xF7, 0xF5, 0xFD, 0xFB, 0xFA, 0xFE, 0xF0, 0xF3, 0xBF,
    0x3F, 0x7F, 0xFF, 0xEF, 0xCF, 0xDF, 0xFF, 0xFF, 0xFB, 0xF3,
    0xFF, 0xF7, 0xF3, 0xFE, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7F };

    /* Dinh nghia cac su kien path sensor: */
    /*
    Bo tri sensor bam duong:

    |2 3|
    ____| |___
    6 | |
    | | 7
    ----| |---
    | |
    ____| |___
    4 | 1|
    |0 | 5

    And Mask: Co lap bit - chi lay nhung bit co gia tri, - = 0, 0 = 1, 1 = 1
    Or Mask: Kiem tra gia tri, - = 1, 0 = 0, 1 = 1

    Code Mask And Mask OR Mask Return Mask Mean in Vietnamese
    0 = 11111111 0xFF 0x00 0xFF Lac duong
    1 = ----01-- 0x0C 0xF3 0xF7 Lech trai - 2 ra ngoai
    2 = ----0101 0x0F 0xF0 0xF5 Lech trai nhieu - 0, 2 ra ngoai
    3 = ----110- 0x0E 0xF1 0xFD Lech trai rat nhieu - 2, 3 ra ngoai, 1 o trong
    4 = ----10-- 0x0C 0xF3 0xFB Lech phai - 3 ra ngoai
    5 = ----1010 0x0F 0xF0 0xFA Lech phai nhieu - 1, 3 ra ngoai
    6 = ----11-0 0x0D 0xF2 0xFE Lech phai rat nhieu - 2, 3 ra ngoai, 0 o trong
    7 = ----0000 0x0F 0xF0 0xF0 Thang duong
    8 = ----00-- 0x0C 0xF3 0xF3 Coi nhu thang duong - 2, 3 dung vi tri
    9 = 10------ 0xC0 0x3F 0xBF Tam xe gap nut - 6 vao, 7 dang o ngoai
    10 = 00------ 0xC0 0x3F 0x3F Tam xe tai nut - vi tri lay bong - 6, 7 vao
    11 = 01------ 0xC0 0x3F 0x7F Tam xe sap qua nut - 6 ra ngoai, 7 con o trong
    12 = 11------ 0xC0 0x3F 0xFF Tam xe qua nut - 6, 7 ra ngoai

    13 = --10---- 0x30 0xCF 0xEF Tam quay gap nut - 4 vao, 5 dang o ngoai
    14 = --00---- 0x30 0xCF 0xCF Tam quay tai nut - 4, 5 vao
    16 = --01---- 0x30 0xCF 0xDF Tam quay sap qua nut - 4 ra ngoai, 5 con o trong
    15 = --11---- 0x30 0xCF 0xFF Tam quay qua nut - 4, 5 ra ngoai

    17 = ----11-- 0x0C 0xF3 0xFF Quay trai, qua nut
    18 = ----10-- 0x0C 0xF3 0xFB Quay trai, gap nut
    19 = ----00-- 0x0C 0xF3 0xF3 Quay trai, tai nut
    20 = ----11-- 0x0C 0xF3 0xFF Quay phai, qua nut
    21 = ----01-- 0x0C 0xF3 0xF7 Quay phai, gap nut
    22 = ----00-- 0x0C 0xF3 0xF3 Quay phai, tai nut

    23 = -------0 0xFE 0xFE Sensor 0 nam trong vach
    24 = ------0- 0xFD 0xFD Sensor 1 nam trong vach
    25 = -----0-- 0xFB 0xFB Sensor 2 nam trong vach
    26 = ----0--- 0xF7 0xF7 Sensor 3 nam trong vach
    27 = ---0---- 0xEF 0xEF Sensor 4 nam trong vach
    28 = --0----- 0xDF 0xDF Sensor 5 nam trong vach
    29 = -0------ 0xBF 0xBF Sensor 6 nam trong vach
    30 = 0------- 0x7F 0x7F Sensor 7 nam trong vach

    */

    #define SEN_GL_LOST 0 // lac duong
    #define SEN_GL_LECH_TRAI 1
    #define SEN_GL_LECH_TRAI_NHIEU 2
    #define SEN_GL_LECH_TRAI_RAT_NHIEU 3
    #define SEN_GL_LECH_PHAI 4
    #define SEN_GL_LECH_PHAI_NHIEU 5
    #define SEN_GL_LECH_PHAI_RAT_NHIEU 6
    #define SEN_GL_THANG_DUONG 7
    #define SEN_GL_COI_NHU_THANG_DUONG 8
    #define SEN_GL_TAM_GAP_NUT 9
    #define SEN_GL_TAM_TAI_NUT 10
    #define SEN_GL_TAM_SAP_QUA_NUT 11
    #define SEN_GL_TAM_QUA_NUT 12

    #define SEN_GL_TAM_QUAY_GAP_NUT 13
    #define SEN_GL_TAM_QUAY_TAI_NUT 14
    #define SEN_GL_TAM_QUAY_SAP_QUA_NUT 15
    #define SEN_GL_TAM_QUAY_QUA_NUT 16


    #define SEN_GL_QUAY_TRAI_QUA_NUT 17
    #define SEN_GL_QUAY_TRAI_GAP_NUT 18
    #define SEN_GL_QUAY_TRAI_TAI_NUT 19
    #define SEN_GL_QUAY_PHAI_QUA_NUT 20
    #define SEN_GL_QUAY_PHAI_GAP_NUT 21
    #define SEN_GL_QUAY_PHAI_TAI_NUT 22

    #define SEN_GL_0_TRONG_VACH 23
    #define SEN_GL_1_TRONG_VACH 24
    #define SEN_GL_2_TRONG_VACH 25
    #define SEN_GL_3_TRONG_VACH 26
    #define SEN_GL_4_TRONG_VACH 27
    #define SEN_GL_5_TRONG_VACH 28
    #define SEN_GL_6_TRONG_VACH 29
    #define SEN_GL_7_TRONG_VACH 30

  3. #3
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    /*------------------------------------
    Module informations:
    ------------------------------------*/

    #include <AT89X52.H>
    #include "D:\luu\GoldGift - 110404\Header\Define.H"
    //#include "D:\Robocon 2004\CirtechPlus\Developing\Software\Base on Circuit Ver 1.2\Gift12\Header\ThisMachine.H"

    extern struct RoboDef ROBO_NAME;

    unsigned char code MSK_TCH_OR[8] =
    { 0xFE, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7F };

    // San dung, SENSOR TU CHE
    unsigned char code MSK_PS_OR[36] =
    { 0x3C, 0xFC, 0x3C, 0x3C, 0xFC, 0x3C, 0x3C, 0xFC, 0x3C, 0xF3, 0xF3, 0xF3,
    0xF3, 0xCF, 0xCF, 0xCF, 0xCF, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFE,
    0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3C };

    unsigned char code MSK_PS_RETURN[36] =
    { 0x3C, 0xFD, 0x7D, 0x7C, 0xFE, 0xBE, 0xBC, 0xFF, 0x3F, 0xFF, 0xF3, 0xF3,
    0xF3, 0xFF, 0xCF, 0xCF, 0xCF, 0xFC, 0xFE, 0xFD, 0xFC, 0xFD, 0xFE, 0xFF,
    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x7F, 0xBF, 0x3F, 0xFF };

    /* Dinh nghia cac su kien path sensor: */
    /*
    Bo tri sensor bam duong:

    7 |1 0| 6
    ________| |_______
    3 | | 2
    | |
    ________| |_______
    | |
    ________| |_______
    5 | | 4
    | |
    ________| |_______

    And Mask: Co lap bit - chi lay nhung bit co gia tri, - = 0, 0 = 1, 1 = 1
    Or Mask: Kiem tra gia tri, - = 1, 0 = 0, 1 = 1

    Code Mask OR Mask Return Mask Mean in Vietnamese
    0 = 00----00 0x3C 0x3C Lac duong
    1 = ------01 0xFC 0xFD Lech trai - 1 ra ngoai
    2 = 01----01 0x3C 0x7D Lech trai nhieu
    3 = 01----00 0x3C 0x7C Lech trai rat nhieu
    4 = ------10 0xFC 0xFE Lech phai - 0 ra ngoai
    5 = 10----10 0x3C 0xBE Lech phai nhieu
    6 = 10----00 0x3C 0xBC Lech phai rat nhieu
    7 = ------11 0xFC 0xFF Thang duong
    8 = 00----11 0x3C 0x3F Coi nhu thang duong - 0, 1 dung vi tri

    9 = ----11-- 0xF3 0xF3 Tam xe gap nut - 2, 3 Vao
    10 = ----00-- 0xF3 0xFF Tam xe tai nut - vi tri lay bong - 2, 3 VUA RA NGOAI
    11 = ----00-- 0xF3 0xFF khong co y nghia voi cach bo tri nay
    12 = ----00-- 0xF3 0xFF khong co y nghia voi cach bo tri nay

    13 = --11---- 0xCF 0xCF Tam quay gap nut - 4, 5 vao
    14 = --00---- 0xCF 0xFF Tam quay tai nut - 4, 5 vua ra ngoai
    16 = --00---- 0xCF 0xFF khong co y nghia voi cach bo tri nay
    15 = --00---- 0xCF 0xFF khong co y nghia voi cach bo tri nay

    17 = ------00 0xFC 0xFC Quay trai, qua nut
    18 = ------10 0xFC 0xFE Quay trai, gap nut
    19 = ------11 0xFC 0xFC Quay trai, tai nut
    19' = ------10 0xFC 0xFE Quay trai, tai nut, san gia 0xFD
    20 = ------11 0xFC 0xFF Quay phai, qua nut
    21 = ------10 0xFC 0xFE Quay phai, gap nut
    22 = ------00 0xFC 0xFC Quay phai, tai nut
    22' = ------01 0xFC 0xFD Quay phai, tai nut, san gia 0xFE

    23 = -------0 0xFE 0xFE Sensor 0 nam trong vach
    24 = ------0- 0xFD 0xFD Sensor 1 nam trong vach
    25 = -----0-- 0xFB 0xFB Sensor 2 nam trong vach
    26 = ----0--- 0xF7 0xF7 Sensor 3 nam trong vach
    27 = ---0---- 0xEF 0xEF Sensor 4 nam trong vach
    28 = --0----- 0xDF 0xDF Sensor 5 nam trong vach
    29 = -0------ 0xBF 0xBF Sensor 6 nam trong vach
    30 = 0------- 0x7F 0x7F Sensor 7 nam trong vach

    31 = 11------ 0x3F 0x3F Must stop, cau chua xay, phai dung lai
    32 = 01------ 0x3F 0x7F Di lui, lech trai
    33 = 10------ 0x3F 0xBF Di lui, lech phai
    34 = 00------ 0x3F 0x3F Di lui, dung vach

    35 = 11----11 0x3C 0xFF Ca 4 den cung sang, dang o vach ngang
    */

    /*-------------------------
    Functions prototype
    -------------------------*/

    /*-------------------------
    Externs functions
    -------------------------*/
    extern void _MOVX2(unsigned char cs, unsigned char *byte);

    /*-------------------------
    Public functions
    -------------------------*/
    unsigned char PathSensState(void);
    unsigned char CheckPathSensState(unsigned char stateNum);
    unsigned char CheckTouchSensState(unsigned char stateNum);
    unsigned char CheckSensState(unsigned char stateNum);

    void WaitFor(unsigned char stateNum, unsigned int _TIME_OUT);
    /* Called by
    Gift.C
    GuidLineTraj.C
    */
    /*-------------------------
    Private functions
    -------------------------*/

    /*-------------------------
    Extern varialbes:
    -------------------------*/

    /*-------------------------
    Publics varialbes:
    -------------------------*/
    //#define PRT_PATH_SENS ChipSelect2
    unsigned char xdata PRT_PATH_SENS _at_ CS2;
    unsigned char xdata PRT_OPTI_SENS _at_ CS3;
    unsigned char xdata PRT_TOUCH_SENS0 _at_ CS4;
    unsigned char xdata PRT_TOUCH_SENS1 _at_ CS5;
    extern void Display2Byte(unsigned char byte0, unsigned char byte1);
    /*-------------------------
    Private varialbes:
    -------------------------*/

    /*-------------------------
    Functions code
    -------------------------*/
    unsigned char CheckSensState(unsigned char stateNum) {
    if (stateNum < SEN_TOUCH) return CheckPathSensState(stateNum);
    else return CheckTouchSensState(stateNum - SEN_TOUCH);
    }

    unsigned char PathSensState(void) {
    unsigned char ps;
    ps = PRT_PATH_SENS;
    // ps = P2; // For Testing
    return ps;
    }

    unsigned char CheckPathSensState(unsigned char stateNum) {
    unsigned char ps;
    ps = PathSensState();
    ps = ps | MSK_PS_OR[stateNum];
    return (ps == MSK_PS_RETURN[stateNum]);
    }

    void WaitFor(unsigned char stateNum, unsigned int _TIME_OUT) {
    unsigned char done;
    done = FALSE;
    ROBO_NAME.TimeOut = _TIME_OUT;
    while (!done) {
    done = CheckSensState(stateNum);
    // Display2Byte(0x00,PathSensState());
    if (ROBO_NAME.TimeOut == 0) done = TRUE;
    }
    if (ROBO_NAME.TimeOut > 0) ROBO_NAME.TimeOut = 2;
    }

    // StateNum = 0..23, or StateNum = 0+SEN_TOUCH..23+SEN_TOUCH
    unsigned char CheckTouchSensState(unsigned char stateNum) {
    unsigned char tch;
    // khong chong rung co khi:
    // Co the tu hieu chinh theo ma hoac truyen theo ma
    if (stateNum > SEN_TOUCH) stateNum -= SEN_TOUCH;

    // Kiem tra trang thai
    if (stateNum < 8) {
    tch = PRT_TOUCH_SENS0;
    // tch = P2; // for testing
    }
    else if (stateNum < 16) tch = PRT_TOUCH_SENS1;
    else if (stateNum < 24)tch = PRT_OPTI_SENS;

    stateNum %= 8;
    tch = tch | MSK_TCH_OR[stateNum];
    return (tch == MSK_TCH_OR[stateNum]);

  4. #4
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    Module Chính
    /*-----------------------------------------------------------------
    Module informations:

    Module Time, run in 24MHz
    Support time's functions:
    delaydusec(dusec): delay for dusec*10*micro second(s)
    delaymsec(msec): delay for msec millisecond(s)
    delaysec(sec): delay for sec second(s)


    Rewrite MOVX instruction:
    _MOV2X(cs, byte)
    _MOVX2(cs, byte)

    Display functions:

    Allright Reseverved
    ------------------------------------------------------------------*/

    #include <AT89X52.H>
    #include "D:\luu\GoldGift - 110404\Header\Define.H"
    //#include "D:\Robocon 2004\CirtechPlus\Developing\Software\Base on Circuit Ver 1.2\GoldGift\Header\ThisMachine.H"

    /*-------------------------
    Publics varialbes:
    -------------------------*/
    /*
    2kHz = -1000 = 0xFC18
    1kHz = -2000 = 0xF82F
    200Hz = -10000 = 0xD8EF
    100Hz = -20000 = 0xB1DF
    50Hz = -40000 = 0x63BF
    16.7Hz = -60000 = 0x15BD
    15.4Hz = -65000 = 0x0217
    15.3Hz = -65500 = 0x0203
    */

    #define th0 0xD8
    #define tl0 0xEF
    #define PRT_DSP_SELECT_LED P2
    #define MSK_DISPLAY 0xF0

    unsigned char DSP_MEMORY[4];
    unsigned char xdata PRT_DISPLAYER _at_ CS1;
    /*-------------------------
    Externs varialbes:
    -------------------------*/
    extern struct RoboDef ROBO_NAME;
    extern bit ddtr; // danh dau vach ngang dung sensor ben trai
    extern bit ddph; // danh dau vach ngang dung sensor ben phai
    extern bit dd; // danh dau vach ngang
    extern bit DemVach;
    extern bit DoCauHo;
    extern bit DoCauDay;
    /*-------------------------
    Private varialbes:
    -------------------------*/
    unsigned char code GiaiMaLed[16] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x98 ,0x88,0x83,0xC6,0xA1,0x86,0x8E};
    /* [16] = |_ [17] = _| [18] = |- [19] = -|
    [20] = - [21] = 2 gach duoi [22] = 2 gach tren [23] = 3 gach
    */
    unsigned char code GM_ID[4] = {0xFE, 0xFD, 0xFB, 0xF7};

    unsigned char LedID;


    /*-------------------------
    Functions prototype
    -------------------------*/
    /*-------------------------
    Externs functions
    -------------------------*/
    extern void Proc_Set(unsigned char procNum, unsigned char state);
    extern unsigned char ProcRunning(unsigned char procNum);
    extern unsigned char CheckPathSensState(unsigned char stateNum);
    extern unsigned char CheckTouchSensState(unsigned char stateNum);

    /*-------------------------
    Public functions
    -------------------------*/

    void _MOV2X(unsigned char cs, unsigned char byte);
    /* Called by
    Displayer.SendBCDByte
    MotorControl.SetSpeed
    */

    /*
    void _MOVX2(unsigned char cs, unsigned char *byte);
    /* Called by
    */

    void delaydusec(unsigned char dusec);
    /*---------------------------------------------------------
    delaydusec called by:
    - MotorControl.SetSpeed()
    - Displayer.DisplayBCDByte()
    - Trajections.FreeSapceTraj.GoFollowTrajection
    -----------------------------------------------------------*/
    void delaymsec(unsigned char msec);
    void delaysec(unsigned char sec);

    void DisplayInit(void);
    //void DisplayXX(unsigned char byte0, unsigned char byte1);
    //void DisplayXXXX(unsigned char byte0, unsigned char byte1, unsigned char byte2, unsigned char byte3);

    void DisplayByte(unsigned char byte);
    void Display2Byte(unsigned char byte0, unsigned char byte1);
    void SaveState(unsigned char stateNum);

    /*-------------------------
    Functions code
    -------------------------*/

    void _MOV2X(unsigned char cs, unsigned char byte) {
    cs = (cs << 5) & 0xE0;
    P2 = P2 & 0x1F;
    P2 = P2 | cs;
    P0 = byte;
    WR = 0;
    WR = 0;
    WR = 0;
    WR = 0;
    WR = 0;
    WR = 0; // Dam bao ngat
    WR = 1;
    }

    // Ghi trang thai xe vao cua so trng thai
    void SaveState(unsigned char stateNum) {
    if (ROBO_NAME.stateWindow[0] == stateNum) return;
    ROBO_NAME.stateWindow[1] = ROBO_NAME.stateWindow[0];
    ROBO_NAME.stateWindow[0] = stateNum;
    }

    /*
    void _MOVX2(unsigned char cs, unsigned char *byte) {
    cs = (cs << 5) & 0xE0;
    P2 = P2 & 0xF1;
    P2 = P2 | cs;
    RD = 0;
    *byte = P0;
    RD = 1;
    }
    */

    void delaydusec(unsigned char dusec) {
    unsigned char i, j;

    for (i=0; i<dusec; i++)
    // 1ms = 2000 clocks
    for (j=0; j; j++); // each instruction have 3 clocks
    }

    void delaymsec(unsigned char msec) {
    unsigned char i,j,k;

    for (i=0; i<msec; i++)
    // 1ms = 2000 clocks
    for (j=0; j3; j++) // each instruction have 3 clocks
    for (k=0; k<20; k++); // 1 clocks = 0.5us in 24MHz

    }

    void delaysec(unsigned char sec) {
    unsigned char i,j,k,l;

    for (i=0; i<sec; i++) {
    // 1s = 2000,000 clocks
    // each 1 instruction have 3 clocks
    // 1 clocks = 0.5us in 24MHz

    // this for 19920000 clocks
    for (j=0; j<40; j++)
    for (k=0; k<200; k++)
    for (l=0; l<81; l++);
    }
    }


    /*-------------------------
    Displayer
    -------------------------*/
    void DisplayInit(void) {
    LedID = 0;
    DSP_MEMORY[0] = GiaiMaLed[0];
    DSP_MEMORY[1] = GiaiMaLed[0];
    DSP_MEMORY[2] = GiaiMaLed[0];
    DSP_MEMORY[3] = GiaiMaLed[0];
    TMOD = 0x11; // dem 16 bit
    ET0 = 1;
    TR0 = 1;
    Proc_Set(PRG_DISPLAYER, PRG_STA_ON);
    }

    // Work at frequency = 4*25 = 100Hz
    void TimerDisplay(void) interrupt TF0_VECTOR {
    // unsigned char lsl;
    TR0 = 0;

    if ((DemVach) && (ROBO_NAME.sovach > 0)) {
    if (CheckPathSensState(ROBO_NAME.lsen)) ddtr = 1;
    if (CheckPathSensState(ROBO_NAME.rsen)) ddph = 1;
    if (ddtr && ddph && (!dd)) {
    ROBO_NAME.sovach--;
    dd = 1;
    if (ROBO_NAME.sovach == 0) {
    DemVach = 0;
    dd = 0;
    ddtr = 0;
    ddph = 0;
    }
    }
    if ((!CheckPathSensState(ROBO_NAME.lsen))&&(dd)) {
    ddtr = 0;
    //dd = 0;
    }
    if ((!CheckPathSensState(ROBO_NAME.rsen))&&(dd)) {
    ddph = 0;
    // dd = 0;
    }
    if ((ddtr == 0)&&(ddph == 0)) { dd = 0;};
    }

    if (DoCauHo) {
    // Cau ho
    if (CheckTouchSensState(SEN_GL_BRIDGE)) {
    ROBO_NAME.cr++;
    if (ROBO_NAME.cr > 10) {
    DoCauHo = 0;
    ROBO_NAME.cr = 0;
    }
    }
    }
    if (DoCauDay) {
    // Cau ho
    if (!CheckTouchSensState(SEN_GL_BRIDGE)) {
    ROBO_NAME.cr++;
    if (ROBO_NAME.cr > 10) {
    DoCauDay = 0;
    ROBO_NAME.cr = 0;
    }
    }
    }

    if (ROBO_NAME.TimeOut > 0) ROBO_NAME.TimeOut--;
    ROBO_NAME.SysTime++;

    TL0 = tl0;
    TH0 = th0;
    // Xoa gia tri port cu
    PRT_DISPLAYER = 0xFF;
    // Dat gia tri port moi, chon LED
    PRT_DSP_SELECT_LED = GM_ID[LedID];

    // Dat gia tri can hien thi
    PRT_DISPLAYER = DSP_MEMORY[LedID];
    LedID++;
    if (LedID == 4) LedID=0;

    /*
    if (ProcRunning(PRG_DISPLAYER)) TR0 = 1;
    else PRT_DISPLAYER = 0xFF;
    */
    TR0 = 1;
    }

    /*
    void DisplayXX(unsigned char byte0, unsigned char byte1) {
    DSP_MEMORY[0] = GiaiMaLed[byte0];
    DSP_MEMORY[1] = GiaiMaLed[byte1];
    }


    void DisplayXXXX(unsigned char byte0, unsigned char byte1, unsigned char byte2, unsigned char byte3) {
    DSP_MEMORY[0] = GiaiMaLed[byte0];
    DSP_MEMORY[1] = GiaiMaLed[byte1];
    DSP_MEMORY[2] = GiaiMaLed[byte2];
    DSP_MEMORY[3] = GiaiMaLed[byte3];
    }
    */

    void DisplayByte(unsigned char byte) {
    unsigned char bcd;
    bcd = byte % 16;
    DSP_MEMORY[0] = GiaiMaLed[bcd];
    bcd = byte / 16;
    DSP_MEMORY[1] = GiaiMaLed[bcd];
    }

    void Display2Byte(unsigned char byte0, unsigned char byte1) {
    unsigned char bcd;
    bcd = byte0 % 16;
    DSP_MEMORY[0] = GiaiMaLed[bcd];
    bcd = byte0 / 16;
    DSP_MEMORY[1] = GiaiMaLed[bcd];
    bcd = byte1 % 16;
    DSP_MEMORY[2] = GiaiMaLed[bcd];
    bcd = byte1 / 16;
    DSP_MEMORY[3] = GiaiMaLed[bcd];
    }

  5. #5
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    Chương trình hoàn thiện ASM quà vàng, tác giả Nguyễn Văn Canh (Langthanginternet) Cirtech45
    ;CHUONG TRINH CHO IC MASTER
    ; P1: CAM BIEN NHAN VAO
    ; P0: TRUYEN SANG SLAVER

    STARTB EQU P3.7
    CT_NANG EQU P3.2
    CT_HATAY EQU P3.0
    CT_QUA EQU P3.1
    CB_L EQU P1.2
    CB_R EQU P1.1
    MKEP_DIR EQU P2.0
    MKEP_EN EQU P2.1
    MNANG_DIR EQU P2.2
    MNANG_EN EQU P2.3

    STOP_C EQU 11111111B
    QPHAI_C EQU 00011111B
    QTRAI_C EQU 00101111B
    LUI_C EQU 00111111B
    THANG_C EQU 01001111B
    TINHCHINH_C EQU 01011111B
    ORG 0000H
    LJMP INIT
    ORG 001BH ;DIEM NHAP VECTOR NGAT CUA T1
    LJMP NGATT1
    ORG 0030H
    INIT:;KHOI TAO CAC GIA TRI SAU RESET
    CLR TR0
    MOV SP,#5FH
    SETB STARTB ;BIT KHOI DONG
    MOV P0,#0FFH
    MOV P1,#0FFH
    MOV R0,#0H ;BIT Dem SO NGA TU
    MOV R1,#0H
    MOV P2,#0H ;TAT CAC DONG CO
    MOV IE,#0H ;CHO PHEP NGAT BO DINH THOI 1
    MOV P3,#0FFH
    MOV TMOD,#00010001B
    CLR TR1
    CLR TR0
    CLR TF0
    CLR TF1


    ;================================================= ================================================== ========================
    MAIN:
    ;MOV P0,QPHAI_C
    JB STARTB,MAIN
    LAP_CHINH:
    MOV A,P1
    ANL A,#00001111B
    MOV P0,A
    LJMP LAP_CHINH
    EXIT:
    NODO: SJMP NODO

    ;================================================= ================================================== ========================
    DEMNGATU:
    INC R0
    ;LCALL STOP_ALL
    ; LCALL TRE_2S
    CJNE R0,#2,TIEP1
    LCALL DUNG_NGATU
    LCALL TRE_QUAY
    LCALL QUAYPHAI
    TIEP1:
    CJNE R0,#10,TIEP2
    LCALL DUNG_NGATU
    LCALL TRE_QUAY
    LCALL QUAYphai
    TIEP2:
    CJNE R0,#15,DITIEP
    LCALL DUNG_NGATU
    LCALL TRE_QUAY
    LCALL QUAYTRAI
    HERE20: SJMP HERE20

    DITIEP:
    TREQUAVACH: LCALL TRE0 ;CHO THOI GIAN TRE DI DI QUA VACH NGANG
    TROVE:
    RET ;TRO VE CHUONG TRINH
    ;==================================
    LAYQUA:
    LCALL STOP_ALL
    ;KEPQUA
    SETB MKEP_EN
    LCALL TRE_quay
    CLR MKEP_EN
    ;NANG QUA
    SETB MNANG_EN
    DOINANG: JB CT_NANG,DOINANG
    CLR MNANG_EN
    ;NHA QUA
    SETB MKEP_DIR
    SETB MKEP_EN
    LCALL TRE_quay

    CLR MKEP_EN
    CLR MKEP_DIR
    ;HA TAY
    ; SETB MNANG_DIR
    ; SETB MNANG_EN
    ; DOIHA: JB CT_HATAY,DOIHA
    ; CLR MNANG_EN
    ; CLR MNANG_DIR
    RET
    ;================================
    DUNG_NGATU:
    LAPNT:
    JB P1.4,THOATNT
    MOV A,P1
    ANL A,#00001111B
    MOV P0,A
    LJMP LAPNT
    THOATNT:
    LCALL STOP_ALL
    LCALL TRE_QUAY
    MOV P0,#00111111B
    DOINT: JNB P1.4, DOINT
    LCALL STOP_ALL
    MOV P0,#01011111B ;TINH CHINH
    LCALL STOP_ALL
    RET
    ;==================================
    QUAYTRAI:
    MOV P0,#00101111B ;QUAYTRAI
    LCALL TRE_QUAY
    LAPQT:
    MOV A,p1
    ORL A,#11111001B
    CJNE A,#11111111B,LAPQT
    LCALL STOP_ALL
    LCALL TRE_100
    MOV P0,#00011111B ;QUAYPHAI

    LAPQT2:
    MOV A,p1
    ORL A,#11111001B
    CJNE A,#11111111B,LAPQT2
    LCALL STOP_ALL
    LCALL TRE_QUAY
    LCALL TRE_QUAY
    RET
    ;================================================= ========
    QUAYPHAI:
    MOV P0,#00011111B ;QUAYTRAI
    LCALL TRE_QUAY
    LAPQP:
    MOV A,p1
    ORL A,#11111001B
    CJNE A,#11111111B,LAPQP
    LCALL STOP_ALL
    LCALL TRE_100
    MOV P0,#00101111B ;QUAYPHAI
    LAPQP2:
    MOV A,p1
    ORL A,#11111001B
    CJNE A,#11111111B,LAPQP2
    LCALL STOP_ALL
    LCALL TRE_QUAY
    LCALL TRE_QUAY
    RET
    ;=================================================
    NGATT1:

    RETI

    STOP_ALL:
    MOV P0,#0FFH
    RET
    ;====================CAC THU TUC TRE================
    TRE0: ;THU TUC DE TAO TRE QUA VACH NGANG NGA TU
    mov r7,#50
    again0: mov TH0,#HIGH(-10000)
    mov TL0,#LOW(-10000)
    setb tr0
    wait0:
    MOV A,P1
    ANL A,#00001111B
    MOV P0,A
    jnb tf0,wait0
    clr tr0
    clr tf0
    djnz r7,again0
    RET
    TRE_500: ; 1s
    mov r7,#50
    again_1S: mov TH0,#HIGH(-10000)
    mov TL0,#LOW(-10000)
    setb tr0
    wait_1S: jnb tf0,wait_1S
    clr tr0
    clr tf0
    djnz r7,again_1S
    RET
    TRE_QUAY: ;
    MOV R7,#100
    again: mov TH0,#HIGH(-10000)
    mov TL0,#LOW(-10000)
    setb tr0
    wait: jnb tf0,wait
    clr tr0
    clr tf0
    djnz r7,again
    RET
    TRE_100: ;
    MOV R7,#10
    again: mov TH0,#HIGH(-10000)
    mov TL0,#LOW(-10000)
    setb tr0
    wait: jnb tf0,wait
    clr tr0
    clr tf0
    djnz r7,again
    RET

    TRE_2S: ; 1s
    mov r7,#200

    again_2S: mov TH0,#HIGH(-10000)
    mov TL0,#LOW(-10000)
    setb tr0
    wait_2S: jnb tf0,wait_2S
    clr tr0
    clr tf0
    djnz r7,again_2S
    RET


    END

  6. #6
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    Ghi điểm (con Master), Tác giả Xuân Bình Cirtech45.
    ;PORT0 CHUNG VOI SLAVE,LUC DAU CHO CA 2 DAU BANG 1->ROBOT DUNG
    ;PORT1: DAU VAO CAM BIEN, DUA RA MA O PORT0 CHO SLAVE HOAT DONG
    CAMBIEN1 EQU P1.5
    CAMBIEN2 EQU P1.4
    CAMBIEN3 EQU P1.2
    CAMBIEN4 EQU P1.3
    CODE_L EQU 11000101B ;MA DE CHO SLAVE RE PHAI
    CODE_R EQU 11001010B ;MA DE CHO SLAVE RE TRAI

    KHOIDONG EQU P3.7
    ORG 0000H

    LJMP INIT
    ;============THIET LAP TRANG THAI DAU========
    ORG 0030H
    INIT:
    MOV P0,#0FFH
    MOV P1,#0FFH
    MOV IE,#00H
    MOV SP,#5FH
    MOV R0,#00H; BIEN DEM NGA TU
    SETB KHOIDONG
    MAIN:
    JB KHOIDONG,MAIN
    STEP0:

    MOV P0,P1 ;CHUYEN TIN HIEU CAM BIEN SANG P0
    MOV A,P1 ;CHUYEN TIN HIEU CAM BIEN SANG THANH CHUA A
    ORL A,#01011111B
    CJNE A,#11111111B,STEP_CUOI
    ;NEU GAP NGA TU THI
    INC R0 ;TANG BIEN DEM NGA TU
    LCALL TRE1

    CJNE R0,#2,STEP1

    MOV P0,#0FFH
    LCALL TRE0

    MOV P0,#11001010B ;RE TRAI
    LCALL TRE0

    MOV P0,#11111011B ;CHINH LECH PHAI

    STEP1:
    CJNE R0,#9,STEP_CUOI

    MOV P0,#0FFH
    LCALL TRE0

    MOV P0,#11001010B ;RE TRAI
    LCALL TRE0

    MOV P0,#11111011B ;CHINH LECH PHAIS

    STEP_CUOI:
    LJMP STEP0
    ;===========================================
    TRE0: ;TRE CHO ROBOT RE
    MOV TMOD,#01H
    mov r7,#50
    again0:
    mov th0,#HIGH(-10000)
    mov tl0,#LOW(-10000)
    setb tr0
    wait0:
    jnb tf0,wait0
    clr tr0
    clr tf0
    djnz r7,again0
    RET
    ;=======================================
    TRE1: ;TRE CHO ROBOT QUA TAI NGA TU
    MOV TMOD,#01H
    mov r7,#100
    again1:
    mov th0,#HIGH(-10000)
    mov tl0,#LOW(-10000)
    setb tr0
    wait1:
    MOV P0,P1
    jnb tf0,wait1
    clr tr0
    clr tf0
    djnz r7,again1
    RET

    END

  7. #7
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    Viết cho con Slave (Xuân Bình, Cirtech45), có băm xung bằng vi điều khiển.

    DIR_T EQU P1.0 ;=0->TIEN =1->LUI
    ENA_T EQU P1.1 ;=1->CHO PHEP DONG CO TRAI CHAY
    DIR_P EQU P1.2 ;=0->TIEN =1->LUI
    ENA_P EQU P1.3 ;=1->CHO PHEP DONG CO PHAI CHAY

    ORG 0000H

    LJMP INIT
    ;=====THIET LAP CAC TRANG THAI DAU=====
    ORG 0030H
    INIT:
    MOV P0,#0FFH
    MOV P1,#00H
    MOV IE,#00H
    MOV SP,#5FH
    ;===========CHUONG TRINH CHINH============
    MAIN:
    STEP0:
    MOV A,P0
    CJNE A,#0FFH,STEP1
    CLR ENA_T
    CLR ENA_P
    LJMP STEP0

    STEP1:
    MOV A,P0
    CJNE A,#11000101B,STEP2
    LCALL REPHAI
    LJMP STEP0

    STEP2:
    MOV A,P0
    CJNE A,#11001010B,STEP3
    LCALL RETRAI
    LJMP STEP0

    STEP3:
    MOV A,P0
    ORL A,#11110011B
    CJNE A,#11111111B,STEP4
    LCALL DITHANG ;NEU CA HAI CAM BIEN1,CAMBIEN2 DEU SANG THI DI THANG

    STEP4:
    MOV A,P0
    ORL A,#11110111B
    CJNE A,#11110111B,STEP5
    LJMP LECHTRAI

    STEP5:
    MOV A,P0
    ORL A,#11111011B
    CJNE A,#11111011B,STEP6
    LJMP LECHPHAI

    STEP6:
    LJMP STEP3
    ;==================DI THANG========================
    DITHANG:
    CLR DIR_T
    CLR DIR_P
    SETB ENA_T
    SETB ENA_P
    RET
    ;==================CHINH LECH TRAI==================
    LECHTRAI:
    MOV A,P0
    ORL A,#11110011B
    CJNE A,#11110011B,NHAYQUA
    JB ENA_P,NEXT
    NHAYQUA:
    CLR DIR_T
    CLR DIR_P
    SETB ENA_T
    CLR ENA_P
    NEXT:
    LJMP STEP0
    ;==================CHINH LECH PHAI=================
    LECHPHAI:
    CLR DIR_T
    CLR DIR_P
    SETB ENA_P
    CLR ENA_T
    LJMP STEP0
    ;==================CHO HAI DONG CO DUNG===============
    ;=======CHO ROBOT RE TRAI===========================
    REPHAI:
    CLR DIR_T
    SETB DIR_P
    SETB ENA_P
    SETB ENA_T
    RET
    ;=======CHO ROBOT RE PHAI========================
    RETRAI:
    CLR DIR_P
    SETB DIR_T
    SETB ENA_T
    SETB ENA_P
    RET

    ;================CAC KHOANG THOI GIAN TRE===========
    TRE1:
    MOV TMOD,#01H
    mov r7,#200
    again1:
    mov th0,#HIGH(-10000)
    mov tl0,#LOW(-10000)
    setb tr0
    wait1: jnb tf0,wait1
    clr tr0
    clr tf0
    djnz r7,again1
    RET

    END

  8. #8
    svBK's AntiFan
    Tham gia ngày
    Oct 2004
    Bài gửi
    134

    Mặc định

    Quote Nguyên văn bởi Bandani
    Viết cho con Slave (Xuân Bình, Cirtech45), có băm xung bằng vi điều khiển.

    DIR_T EQU P1.0 ;=0->TIEN =1->LUI
    ENA_T EQU P1.1 ;=1->CHO PHEP DONG CO TRAI CHAY
    DIR_P EQU P1.2 ;=0->TIEN =1->LUI
    ENA_P EQU P1.3 ;=1->CHO PHEP DONG CO PHAI CHAY

    ORG 0000H

    LJMP INIT
    ;=====THIET LAP CAC TRANG THAI DAU=====
    ORG 0030H
    INIT:
    MOV P0,#0FFH
    MOV P1,#00H
    MOV IE,#00H
    MOV SP,#5FH
    ;===========CHUONG TRINH CHINH============
    MAIN:
    STEP0:
    MOV A,P0
    CJNE A,#0FFH,STEP1
    CLR ENA_T
    CLR ENA_P
    LJMP STEP0

    STEP1:
    MOV A,P0
    CJNE A,#11000101B,STEP2
    LCALL REPHAI
    LJMP STEP0

    STEP2:
    MOV A,P0
    CJNE A,#11001010B,STEP3
    LCALL RETRAI
    LJMP STEP0

    STEP3:
    MOV A,P0
    ORL A,#11110011B
    CJNE A,#11111111B,STEP4
    LCALL DITHANG ;NEU CA HAI CAM BIEN1,CAMBIEN2 DEU SANG THI DI THANG

    STEP4:
    MOV A,P0
    ORL A,#11110111B
    CJNE A,#11110111B,STEP5
    LJMP LECHTRAI

    STEP5:
    MOV A,P0
    ORL A,#11111011B
    CJNE A,#11111011B,STEP6
    LJMP LECHPHAI

    STEP6:
    LJMP STEP3
    ;==================DI THANG========================
    DITHANG:
    CLR DIR_T
    CLR DIR_P
    SETB ENA_T
    SETB ENA_P
    RET
    ;==================CHINH LECH TRAI==================
    LECHTRAI:
    MOV A,P0
    ORL A,#11110011B
    CJNE A,#11110011B,NHAYQUA
    JB ENA_P,NEXT
    NHAYQUA:
    CLR DIR_T
    CLR DIR_P
    SETB ENA_T
    CLR ENA_P
    NEXT:
    LJMP STEP0
    ;==================CHINH LECH PHAI=================
    LECHPHAI:
    CLR DIR_T
    CLR DIR_P
    SETB ENA_P
    CLR ENA_T
    LJMP STEP0
    ;==================CHO HAI DONG CO DUNG===============
    ;=======CHO ROBOT RE TRAI===========================
    REPHAI:
    CLR DIR_T
    SETB DIR_P
    SETB ENA_P
    SETB ENA_T
    RET
    ;=======CHO ROBOT RE PHAI========================
    RETRAI:
    CLR DIR_P
    SETB DIR_T
    SETB ENA_T
    SETB ENA_P
    RET

    ;================CAC KHOANG THOI GIAN TRE===========
    TRE1:
    MOV TMOD,#01H
    mov r7,#200
    again1:
    mov th0,#HIGH(-10000)
    mov tl0,#LOW(-10000)
    setb tr0
    wait1: jnb tf0,wait1
    clr tr0
    clr tf0
    djnz r7,again1
    RET

    END
    Kinh khung that ngoai suc tuong tuong cua em bac a , em cung dang dinh xin nhung code nay cua cac doi nam truoc de tham khao vay bac post tuyet voi qua do mat cong di xin. Mot lan nua Thanks m47` :a69 :a69 :a69 :a69 :a69 :a69

  9. #9
    Quân Nhân Danh Dự Avatar của Bandani
    Tham gia ngày
    Feb 2003
    Bài gửi
    599

    Mặc định

    Còn nhiều nhiều nữa, anh em thích hoa mắt thì mình post lên.

  10. #10
    svBK's AntiFan
    Tham gia ngày
    Oct 2004
    Bài gửi
    134

    Mặc định

    Quote Nguyên văn bởi Bandani
    Còn nhiều nhiều nữa, anh em thích hoa mắt thì mình post lên.
    em không bị hoa mắt đâu bác ạ nhưng chừng đó đủ rồi , em thực sự thấy phục người viết được những đoạn mã dài như vậy đấy.

+ Trả lời chủ đề
Trang 1/2 12 CuốiCuối

Thông tin chủ đề

Users Browsing this Thread

Hiện có 1 người đọc bài này. (0 thành viên và 1 khách)

Chủ đề tương tự

  1. Có Bác nào biết code xem ảnh trên C không!
    Gửi bởi xmen_bk trong mục Lập Trình
    Trả lời: 6
    Bài cuối: 09-10-2006, 07:00 PM
  2. The Da Vinci Code
    Gửi bởi -Ash- trong mục Văn học
    Trả lời: 19
    Bài cuối: 30-07-2006, 12:17 AM
  3. Các code Assembly?
    Gửi bởi f1gali trong mục Giảng đường khoa ĐTVT
    Trả lời: 49
    Bài cuối: 22-11-2005, 11:19 PM
  4. A PIC C Code Wizard
    Gửi bởi The Fool trong mục Diễn đàn Học tập và Nghiên cứu KH Sinh viên
    Trả lời: 0
    Bài cuối: 17-06-2005, 11:58 AM

Từ khóa (Tag) của chủ đề này

Quyền viết bài

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình


About svBK.VN

    Bách Khoa Forum - Diễn đàn thảo luận chung của sinh viên ĐH Bách Khoa Hà Nội. Nơi giao lưu giữa sinh viên - cựu sinh viên - giảng viên của trường.

Follow us on

Twitter Facebook youtube