Trang ChínhThành viênĐăng kýĐăng NhậpPhotoShop OnLine

Share | 
 

 Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
langtutaihoa
Biết đi
Biết đi
avatar

Tổng số bài gửi : 43
Điểm số : 258
Thanked : 6

Bài gửiTiêu đề: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 10, 2011 3:32 pm

Đề 1
Câu 2:


Đã sửa lại
#include<18f452.h>
#use delay(clock=20M)
void main(){
while(1) {
output_high(pin_B0);
delay_ms(100);
output_low(pin_B0);
delay_ms(250);
}}
Câu 4:


#include<18f452.h>
#use delay(clock=20M)
void main(){
// set_tris_C(0);//khong co cung duoc
//set_tris_D(0);//
while(1) {
int8 i,x=0x01, y=0x01;// de 2 thay x=0x10 và y=0x10
for (i=0;i<=3;i++)
{output_D(x);
delay_ms(100);
x=x<<1;}
output_D(0);// khong dong nay la thieu
for (i=0;i<=3;i++)
{output_C(y);
delay_ms(100);
y=y<<1;}
output_C(0);//
}
}
Về Đầu Trang Go down
Xem lý lịch thành viên
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 10, 2011 5:06 pm

đúng rồi đấy
câu 4 các bạn có thể làm theo cách
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08,0x00};
void main()
{
  set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=4;i++)
      {
        output_D(mang[i]);delay_ms(100);
      }
      for(i=0;i<=4;i++)
      {
        output_C(mang[i]);delay_ms(100);
      }
     
  }
}
hoặc là
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08};
void main()
{
  set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=3;i++)
      {
        output_D(mang[i]);delay_ms(100);
      }
      output_D(0x00);//khong có là chết,  nhiều người ko có quá
      for(i=0;i<=3;i++)
      {
        output_C(mang[i]);delay_ms(100);
      }
      output_C(0x00);
  }
}
mình thấy có bạn làm theo cách sau:
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08,0x00};
void main()
{
  //set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=7;i++)
      {
        if(i<=3)
        {
            output_D(mang[i]);delay_ms(100);
        }
        else
        {
            output_C(mang[i-4]);delay_ms(100);
        }
      }
  }
}
cách này theo phân tích thì đúng nhưng cho vào chạy chương trình thì sai
vì thiếu
cho dù sửa lại thì cũng sai, mình chưa biết sửa, nếu cho thêm phần tử 0x00 vào trong mảng và cho vòng for chay đến 8 thì cũng sai , mình đã thử cho chay đến 8 và mang[i-5] vẫn ko được, nói chung là làm như thế là sai
Về Đầu Trang Go down
Xem lý lịch thành viên
langtutaihoa
Biết đi
Biết đi
avatar

Tổng số bài gửi : 43
Điểm số : 258
Thanked : 6

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 10, 2011 5:35 pm

Cách 1 của Thăng chạy gián đoạn vì có phần tử mang[4]=0x00, nên bỏ đi và cho vòng lặp For chạy từ 0->3 và cho output_D(0x00); và output_D(0x00); ngoài vòng For như cách 2 của bạn
Về Đầu Trang Go down
Xem lý lịch thành viên
langtutaihoa
Biết đi
Biết đi
avatar

Tổng số bài gửi : 43
Điểm số : 258
Thanked : 6

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 10, 2011 5:48 pm

Cách này thiếu

Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08,0x00};
void main()
{
  //set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=7;i++)
      {
        if(i<=3)
        {
            output_D(mang[i]);delay_ms(100);
        }
        else
        {
            output_C(mang[i-4]);delay_ms(100);
        }
      }
  }
}
Thêm dòng 'output_C(0); và output_D(0);' như này là ok
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08,0x00};
void main()
{
  //set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=7;i++)
      {
        if(i<=3)
        {
            output_C(0);output_D(mang[i]);delay_ms(100);
        }
        else
        {
            output_D(0);output_C(mang[i-4]);delay_ms(100);
        }
      }
   
    }
}
Về Đầu Trang Go down
Xem lý lịch thành viên
quyenk43kdt
Oe oe oe
Oe oe oe


Tổng số bài gửi : 15
Điểm số : 85
Thanked : 0
Đến từ : BG

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 10, 2011 7:01 pm

ôi sai hết rồi Sad
đúng đc bài 2 ,hjc hjc
Về Đầu Trang Go down
Xem lý lịch thành viên
thienthach_pro9x
Biết đi
Biết đi


Tổng số bài gửi : 37
Điểm số : 186
Thanked : 1

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Tue Jan 11, 2011 4:27 am

vudinhthang1989 đã viết:
đúng rồi đấy
câu 4 các bạn có thể làm theo cách
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08,0x00};
void main()
{
  set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=4;i++)
      {
        output_D(mang[i]);delay_ms(100);
      }
      for(i=0;i<=4;i++)
      {
        output_C(mang[i]);delay_ms(100);
      }
     
  }
}
hoặc là
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08};
void main()
{
  set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=3;i++)
      {
        output_D(mang[i]);delay_ms(100);
      }
      output_D(0x00);//khong có là chết,  nhiều người ko có quá
      for(i=0;i<=3;i++)
      {
        output_C(mang[i]);delay_ms(100);
      }
      output_C(0x00);
  }
}
mình thấy có bạn làm theo cách sau:
Code:

#include <18f452.h>
#use delay(clock=20M)
int8 i,mang[]={0x01,0x02,0x04,0x08,0x00};
void main()
{
  //set_tris_D(0x00);set_tris_C(0x00);
  while(1)
  {
      for(i=0;i<=7;i++)
      {
        if(i<=3)
        {
            output_D(mang[i]);delay_ms(100);
        }
        else
        {
            output_C(mang[i-4]);delay_ms(100);
        }
      }
  }
}
cách này theo phân tích thì đúng nhưng cho vào chạy chương trình thì sai
vì thiếu
cho dù sửa lại thì cũng sai, mình chưa biết sửa, nếu cho thêm phần tử 0x00 vào trong mảng và cho vòng for chay đến 8 thì cũng sai , mình đã thử cho chay đến 8 và mang[i-5] vẫn ko được, nói chung là làm như thế là sai



các bác làm rắc rối thế nhỉ :
như thế này là đủ nè:
Code:

#include<18f452.h>
#use delay(clock=20M)
int16 x;
void main()
{
while(1)//
  {
  for(x=0;x<4;x++)
  {
    output_c((1<<x));delay_ms(100);
  }
  output_c(0);
  for(x=0;x<4;x++)
  {output_d(1<<x);delay_ms(100);}
 
 output_d(0);
 
  }

}
Về Đầu Trang Go down
Xem lý lịch thành viên
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Tue Jan 11, 2011 9:11 am

đúng là thế tồi đấy, có nhiều cách mà, dịch bít thì ai chẳng biết.
nhưng bác thiên thạch pro viết chương trình quá tốn bộ nhớ. dùng có 4 bit trên mỗi chân, chỉ khai báo một biến là 8 bit là được rồi
bác ý khai báo những 16 bit cho một biến. khi ấy vùng nhớ sẽ phân như nào đây?
thienthach_pro9x đã viết:

các bác làm rắc rối thế nhỉ :
như thế này là đủ nè:
Code:


#include<18f452.h>
#use delay(clock=20M)
int16 x;
void main()
{
while(1)//
  {
  for(x=0;x<4;x++)
  {
    output_c((1<<x));delay_ms(100);
  }
  output_c(0);
  for(x=0;x<4;x++)
  {output_d(1<<x);delay_ms(100);}
 
 output_d(0);
 
  }

}
chỉ cần thế này thôi nhé
Code:
int8 x;
Về Đầu Trang Go down
Xem lý lịch thành viên
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Tue Jan 11, 2011 9:14 am

hình như bác @ thienthach_pro9x nghĩ rằng dùng với 2 chân thì khai báo với các biến là 16 bit thì phải? hihi
Về Đầu Trang Go down
Xem lý lịch thành viên
thienthach_pro9x
Biết đi
Biết đi


Tổng số bài gửi : 37
Điểm số : 186
Thanked : 1

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Wed Jan 12, 2011 4:09 pm

vudinhthang1989 đã viết:
hình như bác @ thienthach_pro9x nghĩ rằng dùng với 2 chân thì khai báo với các biến là 16 bit thì phải? hihi
bác bị hâm à! e sưa luôn tư cái bài khác ồi cop lên luôn nên đê nguyên cái biến chứ!
pó tay!
bác nghĩ e lại còn không hiêu cái chỗ đó à! hjx!
ai lại nhầm kiêu dữ liệu nữa chứ
không ngờ bác lại nghĩ như vậy

Về Đầu Trang Go down
Xem lý lịch thành viên
thienthach_pro9x
Biết đi
Biết đi


Tổng số bài gửi : 37
Điểm số : 186
Thanked : 1

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Wed Jan 12, 2011 4:15 pm

vudinhthang1989 đã viết:
đúng là thế tồi đấy, có nhiều cách mà, dịch bít thì ai chẳng biết.
nhưng bác thiên thạch pro viết chương trình quá tốn bộ nhớ. dùng có 4 bit trên mỗi chân, chỉ khai báo một biến là 8 bit là được rồi
bác ý khai báo những 16 bit cho một biến. khi ấy vùng nhớ sẽ phân như nào đây?
thienthach_pro9x đã viết:

các bác làm rắc rối thế nhỉ :
như thế này là đủ nè:
Code:


#include<18f452.h>
#use delay(clock=20M)
int16 x;
void main()
{
while(1)//
  {
  for(x=0;x<4;x++)
  {
    output_c((1<<x));delay_ms(100);
  }
  output_c(0);
  for(x=0;x<4;x++)
  {output_d(1<<x);delay_ms(100);}
 
 output_d(0);
 
  }

}
chỉ cần thế này thôi nhé
Code:
int8 x;



cop từ bái khác cần dùng số lớn
nên phai dùng kieu du lieu là int16,,
sưa ui cop len luôn, không de y cái cho do
chu bai nay không can dùng đến biến 16bit

Về Đầu Trang Go down
Xem lý lịch thành viên
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Wed Jan 12, 2011 4:19 pm

hihi ùh
IL
Về Đầu Trang Go down
Xem lý lịch thành viên
chem_cac_sieu_nhan
Biết đi
Biết đi
avatar

Tổng số bài gửi : 29
Điểm số : 129
Thanked : 0

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Thu Jan 13, 2011 12:48 pm

Các bác siêu nhân vãi...Viết có chục dòng lệnh với 2 cái biến cũng kêu tốn bộ nhớ với lại này nọ..thế khai cái mảng thế kia mới là tiết kiệm nhỉ...Bác thăng có vẻ khủng về xoay bít nhỉ..Động vào cái là lại xoay..Ghê gớm
Về Đầu Trang Go down
Xem lý lịch thành viên http://www.k43ddk.net
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Thu Jan 13, 2011 1:19 pm

dạ vâng , trước tiên em xin cảm ơn bác đã góp ý, em biết là dùng mảng tốn bộ nhớ rồi nhưng cũng chỉ đóng góp các cách làm thôi.
bác linh xoăn mở miệng ra là cắn xằng. góp bài thì không góp, chỉ sợ nguời khác ...... mình . ghét nhất là những thẳng như thế
Về Đầu Trang Go down
Xem lý lịch thành viên
chem_cac_sieu_nhan
Biết đi
Biết đi
avatar

Tổng số bài gửi : 29
Điểm số : 129
Thanked : 0

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Sun Jan 16, 2011 4:38 pm

vudinhthang1989 đã viết:
dạ vâng , trước tiên em xin cảm ơn bác đã góp ý, em biết là dùng mảng tốn bộ nhớ rồi nhưng cũng chỉ đóng góp các cách làm thôi.
bác linh xoăn mở miệng ra là cắn xằng. góp bài thì không góp, chỉ sợ nguời khác ...... mình . ghét nhất là những thẳng như thế
Người lịch sự là phải có những câu nói thế này ah
Về Đầu Trang Go down
Xem lý lịch thành viên http://www.k43ddk.net
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Sun Jan 16, 2011 5:19 pm

người ta có câu nói là : đi với bụt mặc áo cà sa, đi với ma mặc áo giấy đi với bác Linh Xoăn thì em phải dùng những từ như thế, không thì bác đấy lại bảo là lịch sự quá
Về Đầu Trang Go down
Xem lý lịch thành viên
Pig_07
Biết đi
Biết đi
avatar

Tổng số bài gửi : 42
Điểm số : 198
Thanked : 4

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 17, 2011 3:29 am

Người đời có câu:
"Dù ai nói ngả nói nghiêng, lòng ta vẫn vững như kiềng 3 chân"

Thế nhưng lại cũng có câu:
"Gió chiều nào xoay ( che ) chiều ấy"

Các bro thật là siêu nhân, mình đây kém cỏi, làm sai hết cả nên chẳng dám bàn Shocked
Về Đầu Trang Go down
Xem lý lịch thành viên
vudinhthang1989
Biết lái máy bay
Biết lái máy bay
avatar

Tổng số bài gửi : 444
Điểm số : 2308
Thanked : 16
Đến từ : Hải Dương

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Mon Jan 17, 2011 10:39 am

đôi khi thì chúng ta phải vững như kiền ba chân. nhưng đôi khi cần có sự mềm dẻo, thiên biến vạn hóa
Về Đầu Trang Go down
Xem lý lịch thành viên
Pig_07
Biết đi
Biết đi
avatar

Tổng số bài gửi : 42
Điểm số : 198
Thanked : 4

Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   Tue Jan 18, 2011 4:01 pm

Nghe thật là thần thánh, mềnh là mềnh chả dám đú Very Happy
Về Đầu Trang Go down
Xem lý lịch thành viên
Sponsored content




Bài gửiTiêu đề: Re: Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)   

Về Đầu Trang Go down
 

Thảo Luận Đề Thi Môn HT Nhúng hôm nay( 10/1/2011)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: Nơi lưu trữ-
Free forum | © phpBB | Free forum support | Report an abuse | Create a free blog