Giúp Dịch Code C Sang Asm - Dien Tu Viet Nam
Có thể bạn quan tâm
- Đăng ký hoặc đăng nhập
- Logging in... Ghi Nhớ? Ðăng Nhập Forgot password or user name? hoặc Đăng ký
- Log in with Facebook
- Nếu đây là lần đầu tiên đến với Điện Tử Việt Nam, bạn có thể đọc phần Hỏi đáp bằng cách nhấn vào liên kết. Có thể bạn cần đăng kí trước khi có thể gửi bài . Để bắt đầu xem bài viết, chọn diễn đàn bạn muốn thăm dưới đây.
- Bài viết
- Hoạt động gần đây
- Tìm kiếm
- Trang of 2
- Lọc
- Giờ All Time hôm nay Last Week Last Month
- Show All Discussions only Photos only Videos only Links only Polls only Events only
- minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Giúp dịch code C sang asm
06-06-2012, 14:34 Bạn nào biết dịch từ C sang asm thì giúp mình nha, mình đang cần để làm đồ án. Thansk Đây là code C: #include<reg52.h> sbit DATA1 = P2^7; sbit SCK1 = P2^6; sbit LACH1 = P2^5; sbit set=P3^5; sbit up=P3^6; sbit down=P3^7; sbit sdi1 = P3^1; sbit str1 = P3^2; sbit clk1 = P3^0; unsigned char m1[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00}; unsigned char m2[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}; unsigned char m3[]={0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff}; unsigned char hour, minute, second,c; unsigned char ma[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0}; unsigned char kt=0,a=0,i,k,x=0; bit set0=1,set1=1,up1=1,up0=1,down0=1,down1=1; sbit SCL = P1^0; sbit SDA = P1^1; void delay(){ unsigned char i; for (i = 0; i < 4; i++){}; } //----------------------------------------- void SCL_high(){ SCL = 1; delay(); } //------------------------------------------ void SCL_low(){ SCL = 0; delay(); } //------------------------------------------- void I2C_Start(){ SDA = 1; SCL = 1; SDA = 0; delay(); SCL = 0; SDA = 1; } //-------------------------------------------- void I2C_Stop(){ SDA = 0; SCL_high(); SDA = 1; } //---------------------------------------------- bit I2C_Write(unsigned char dat){ unsigned char i; bit outbit; for (i = 1; i <= 8; i++){ outbit=dat&0x80; SDA = outbit; dat = dat << 1; SCL_high(); SCL_low(); } SDA = 1; SCL_high(); outbit = SDA; SCL_low(); return(outbit); } //---------------------------------------------------- unsigned char I2C_Read(bit ack){ unsigned char i, dat; bit inbit; dat = 0; for(i=1;i<=8;i++) { SCL_high(); inbit = SDA; dat = dat << 1; dat = dat | inbit; SCL_low(); } if (ack) SDA = 0; else SDA = 1; SCL_high(); SCL = 0; SDA = 1; delay(); return(dat); } //------------------------------------------------------------- void rtc_write(unsigned char add, unsigned char dat){ I2C_Start(); I2C_Write(0xd0); I2C_Write(add); I2C_Write(((dat/10)<<4)|(dat%10)); I2C_Stop(); } unsigned char rtc_read(unsigned char add){ unsigned char dat; I2C_Start(); I2C_Write(0xd0); I2C_Write(add); I2C_Start(); I2C_Write(0xd1); dat = I2C_Read(0); I2C_Stop(); dat = (dat & 0x0f) + (dat>>4)*10; return (dat); } void writeds(){ rtc_write(0x00, second); rtc_write(0x01, minute); rtc_write(0x02, hour); } void readds() { if(kt==0) { if(a==1) {writeds();a=0; } second = rtc_read(0x00); minute = rtc_read(0x01); hour = rtc_read(0x02); } } void hienthi(unsigned char x) { unsigned int i,temp; for(i=0;i<8;i++) { temp=x; temp=temp&0x80; if(temp==0x80) DATA1=1; else DATA1=0; x*=2; SCK1=0; SCK1=1; } } void quetled() { if(kt==0) { hienthi(ma[second%10]); hienthi(ma[second/10]); hienthi(ma[minute%10]); hienthi(ma[minute/10]); hienthi(ma[hour%10]); hienthi(ma[hour/10]); LACH1=0; LACH1=1; } if(kt==1) { hienthi(0xff); hienthi(0xff); hienthi(0xff); hienthi(0xff); hienthi(ma[hour%10]); hienthi(ma[hour/10]); LACH1=0; LACH1=1; } if(kt==2) { hienthi(0xff); hienthi(0xff); hienthi(ma[minute%10]); hienthi(ma[minute/10]); hienthi(0xff); hienthi(0xff); LACH1=0; LACH1=1; } if(kt==3) { hienthi(ma[second%10]); hienthi(ma[second/10]); hienthi(0xff); hienthi(0xff); hienthi(0xff); hienthi(0xff); LACH1=0; LACH1=1; } } void ktphim() { set0=set1;set1=set; if((set0==1)&&(set1==0)) { kt++; if(kt>3)kt=0; } switch(kt) { case 0:break; case 1: { up0=up1;up1=up; a=1; if((up0==1)&&(up1==0)) { hour++; if(hour>23)hour=0; } down0=down1;down1=down; if((down0==1)&&(down1==0)) { hour--; if(hour==-1) hour=23; } break; } case 2: { up0=up1;up1=up; a=1; if((up0==1)&&(up1==0)) { minute++; if(minute>59) minute=0; } down0=down1;down1=down; if((down0==1)&&(down1==0)) { minute--; if(minute==-1) minute=59; } break; } case 3: { up0=up1;up1=up;a=1; if((up0==1)&&(up1==0)) { second++; if(second>59) second++; } down0=down1;down1=down; if((down0==1)&&(down1==0)) { second=0; } break; } } } void ghi_dich(unsigned char t1,unsigned char t2,unsigned char t3,unsigned char t4,unsigned char t5,unsigned char t6,unsigned char t7,unsigned char t8) {unsigned char i,Q; Q=t8; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t7; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t6; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t5; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t4; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t3; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t2; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } Q=t1; for(i=0;i<8;i++){sdi1=(Q&0x01)?1:0;clk1=1;clk1=0;Q >>=1; } str1=0; str1=1; } void sosanh(unsigned char gia_tri) {unsigned char k1,k2,k3; k1=0;k2=m1[gia_tri%8];k3=0xff; if((gia_tri>=0)&&(gia_tri<8)) ghi_dich(k2,k3,k3,k3,k3,k3,k3,k3); if((gia_tri>=8)&&(gia_tri<16)) ghi_dich(k1,k2,k3,k3,k3,k3,k3,k3); if((gia_tri>=16)&&(gia_tri<24))ghi_dich(k1,k1,k2,k 3,k3,k3,k3,k3); if((gia_tri>=24)&&(gia_tri<32))ghi_dich(k1,k1,k1,k 2,k3,k3,k3,k3); if((gia_tri>=32)&&(gia_tri<40))ghi_dich(k1,k1,k1,k 1,k2,k3,k3,k3); if((gia_tri>=40)&&(gia_tri<48))ghi_dich(k1,k1,k1,k 1,k1,k2,k3,k3); if((gia_tri>=48)&&(gia_tri<56))ghi_dich(k1,k1,k1,k 1,k1,k1,k2,k3); if((gia_tri>=56)&&(gia_tri<60))ghi_dich(k1,k1,k1,k 1,k1,k1,k1,k2); } void main() { I2C_Start(); I2C_Write(0xD0); I2C_Write(0x07); I2C_Write(0x10); I2C_Stop(); while(1) { ktphim(); readds(); quetled(); sosanh(second); } } Nhận vẽ mạch in ^_^ TEL: 0167 4500 365 Mail: Tags: None - 4rev Thành viên tích cực
- Tham gia: Jun 2009
- Bài viết: 253
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - binh_an_2012 Thành viên mới
- Tham gia: May 2012
- Bài viết: 17
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - kidteam Thành viên tích cực
- Tham gia: Nov 2010
- Bài viết: 1633
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - 4rev Thành viên tích cực
- Tham gia: Jun 2009
- Bài viết: 253
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - sang_dientu Thành viên tích cực
- Tham gia: Oct 2009
- Bài viết: 1563
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - 4rev Thành viên tích cực
- Tham gia: Jun 2009
- Bài viết: 253
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - 4rev Thành viên tích cực
- Tham gia: Jun 2009
- Bài viết: 253
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ - minhthanh29 Thành viên tích cực
- Tham gia: Jul 2011
- Bài viết: 201
- Share
- Tweet
Comment
Gửi bài viết Huỷ bỏ
- Trả lời cho Hỏi cách điều chế xung bởi thetung Bạn cho qua cái Tờ ri gơ Sờ mít ấy ......
- Channel: Kỹ thuật điện tử tương tự
- Trả lời cho Hỏi cách điều chế xung bởi nguyendinhvan Có gì mà khó ? Răn cưa vuông đây ...
- Channel: Kỹ thuật điện tử tương tự
- Trả lời cho hỏi về tụ điện bởi ndp62 Chữ " VENT" không phải là tên hãng sx tụ đâu ,vó thế là 1 ký hiệu liên quan tụ lowesr ?
- Channel: Điện thanh
- Trả lời cho Thắc mắc về nguồn tổ ong 12v bởi bqviet Trừ trường hợp công suất (rất) thấp, hầu như tất cả các loại nguồn xung thông thường đều có tụ nhỏ 1 - 10nF nối giữa sơ cấp và thứ cấp, để thoát nhiễu và để chống hiện tượng tương tự tĩnh điện. Vụ này đã thảo luận vài...
- Channel: Điện tử dành cho người mới bắt đầu
- Trả lời cho Thắc mắc về nguồn tổ ong 12v bởi namlangnho E thử 3 cái nguồn nó đều giống nhau. Nên e làm tiếp địa luôn.
- Channel: Điện tử dành cho người mới bắt đầu
- Trả lời cho Thắc mắc về nguồn tổ ong 12v bởi mèomướp Dạ chú sắm con át chống giật và thay nguồn tổ ong khác cho an toàn ạ. Đa phần nguồn xung đều xả nhiễu của bên thứ cấp về điện lưới qua 1 con tụ nên cảm giác tê sẽ khó xác định rõ ràng là do rò điện hay là nó vốn vậy...
- Channel: Điện tử dành cho người mới bắt đầu
- Thắc mắc về nguồn tổ ong 12v bởi namlangnho Xin chào mọi người. E có sử dụng 1 cục nguồn tổ ong 12v-30A chạy đèn led xe trà sữa. Mà thợ thi công bị rò điện nên điện rò ra khung xe. E dùng đồng hồ đo điện ở khung xe và cả output thì thấy có dòng điện xoay chiều hơn 100v. Nên chạm...
- Channel: Điện tử dành cho người mới bắt đầu
- Hỏi cách điều chế xung bởi Manh.n.tr Các bác cho em hỏi cách điều chế xung răng cưa sang xung vuông với ạ. Em đang thấy khó ạ...
- Channel: Kỹ thuật điện tử tương tự
- Trả lời cho hỏi về thiết kế mạch tuần tự trên proteus bởi Hatruong1309
- Channel: Hỗ trợ học tập
- hỏi về thiết kế mạch tuần tự trên proteus bởi Hatruong1309 Cho e hỏi là phần chân X thì nối cái j thì mạch mới chạy được ạ và kiểm tra đúng sai kiểu j ạ Đề bài thiết kế mạch dãy đồng bộ nhận biết dãy tín hiệu vào ở dạng nhị phân được đưa liên tiếp ở đầu vào X và được đồng... 1 Photo
- Channel: Hỗ trợ học tập
Từ khóa » Chuyển Code C Sang Assembly
-
Giúp đỡ Chuyển Code C Sang Assembly - Dạy Nhau Học
-
Mọi Người Giúp Em Chuyển đoạn Code C Này Sang Assembly Với
-
TextMeister 2.0.1.0 - Chuyển đổi Các Ngôn Ngữ Lập Trình
-
Chuyển Code C Sang Assembly - Cộng đồng C Việt
-
Compiler Explorer
-
Convert C/C++ Code To Assembly Language - GeeksforGeeks
-
Có Cách Nào Chuyển Từ Code C Sang Assembly Ko Mấy Thím
-
C Vs Assembly - Kipalog
-
Cần Phần Mềm Chuyển đổi Code Assembly Sang Code C
-
Chuyện Này Có Lẽ Là đơn Giản ....nhưng ... [Archive]
-
Biên Dịch Chương Trình Trong C
-
Biên Dịch Chương Trình Assembly Chạy Trên Môi Trường Hệ điều Hành ...
-
C To Assembly Compiler And Interpreter
-
Chuyển Từ ASM Sang Hex Một Cách đơn Giản