View Full Version : Bài tập CCSC đơn giản nhưng ko chạy
congtri91
24-07-2010, 07:07 AM
em lập trình tắt bật led bằng ccsc nhưng khi mô phỏng nó lại ko chạy, cho e hỏi code sai chỗ nào ạ
#include <16F877A.h>
#include <def_877a.h>
#device icd=true
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
main()
{
set_tris_b(0);
output_low (portc);
while(true)
{
output_low (portb);
delay_ms(200);
output_high (portb);
delay_ms(200);
}
cskiller
24-07-2010, 10:11 AM
Hàm output_low,output_high và output_bit là dùng cho 1 PIN, còn output_a,output_b,... mới là dùng cho 1 PORT.
Regards
vinasheva
24-07-2010, 10:33 AM
output_b(0);
delay_ms(200);
output_b(0xff);
delay_ms(200);
Nếu đã include #include <def_877a.h> thì đơn giản hơn: TRISB=0; PORTB=0xff
congtri91
24-07-2010, 08:00 PM
[QUOTE=vinasheva;37519]
output_b(0);
delay_ms(200);
output_b(0xff);
delay_ms(200);
Nếu đã include #include <def_877a.h> thì đơn giản hơn: TRISB=0; PORTB=0xff[/QUO
trước đó em đã làm như vậy nhưng nó chỉ sáng tắt có 1 pin thôi
congtri91
24-07-2010, 08:15 PM
cuối cùng cũng chạy, các báo cho em hỏi mình viết 2 chương trình trong cùng 1 project có được ko ạ??? em vết hai chương trình test led khác nhau nhưng khi dịch cái này nó lại dịch cái kia
nhamdtk4
25-07-2010, 09:56 AM
Chọn CT bạn muốn dịch rồi vào Project trên taskbar sau đó chọn "Make File Project".
congtri91
26-07-2010, 12:48 AM
ko thấy make project
nbb3i
26-07-2010, 01:43 AM
cuối cùng cũng chạy, các báo cho em hỏi mình viết 2 chương trình trong cùng 1 project có được ko ạ??? em vết hai chương trình test led khác nhau nhưng khi dịch cái này nó lại dịch cái kia
Nếu chỉ đơn giản vậy thì bạn nên viết tách hai chương trình đó ra 2 hàm con. Ở hàm main thì bạn lần lượt gọi hàm con theo kịch bản test :beer:
nhamdtk4
26-07-2010, 08:23 AM
Vào phần tùy chỉnh có tên là "Project" trên thanh taskbar của CCS chứ ko phải là vào project của bạn, trong đó mới có "Make File Project"
congtri91
26-07-2010, 01:31 PM
ặc, vậy mà em tìm trong mplab
orecky
31-08-2010, 04:18 AM
em lập trình tắt bật led bằng ccsc nhưng khi mô phỏng nó lại ko chạy, cho e hỏi code sai chỗ nào ạ
#include <16f877a.h>
#include <def_877a.h>
#device icd=true
#device *=16 adc=8
#fuses nowdt, hs, noput, noprotect, nodebug, nobrownout, nolvp, nocpd, nowrt
#use delay(clock=20000000)
main()
{
set_tris_b(0);
output_low (portc);
while(true)
{
output_low (portb);
delay_ms(200);
output_high (portb);
delay_ms(200);
}
cÓ vẺ thiÊuc ngoẮc Ở vÒng void main thÌ phẢi bẠn ah
zztaolaozz
31-08-2010, 01:28 PM
bác nào có viết trương trình C hiển thị trên led7 ko. Cho mình xin tham khảo nha.
Tks
vupromax7209
29-03-2012, 04:52 PM
[QUOTE=congtri91;37514]em lập trình tắt bật led bằng ccsc nhưng khi mô phỏng nó lại ko chạy, cho e hỏi code sai chỗ nào ạ
#include <16F877A.h>
#include <def_877a.h>
#device icd=true
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
void main() //thiếu void nữa
{
set_tris_b(0);
output_low (portc);
while(true)
{
output_low (portb);
delay_ms(200);
output_high (portb);
delay_ms(200);
}
} //thiếu cái này nềk!
vupromax7209
29-03-2012, 04:59 PM
các bác ơi!,em là người mới học lập trình ccs c cho pic,có chỗ này chưa làm được mong các bác giúp đỡ em với ạ!
đoạn code như sau:
#include <16f877a.h>
#include <def_16f877a.h>
#fuses NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWN OUT,NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
void main()
{
trisb=0x00;
portb=0xff;
while (1)
{
portb=0;
delay_ms(500);
portb=0xff;
delay_ms(500);
}
}
các bác ơi làm sao viết cho led chớp nháy đúng số lần minh mong muốn ạ. mong các bác giúp đỡ!
OoMrBayoO
29-03-2012, 06:27 PM
các bác ơi!,em là người mới học lập trình ccs c cho pic,có chỗ này chưa làm được mong các bác giúp đỡ em với ạ!
đoạn code như sau:
#include <16f877a.h>
#include <def_16f877a.h>
#fuses NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWN OUT,NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
void main()
{
trisb=0x00;
portb=0xff;
while (1)
{
portb=0;
delay_ms(500);
portb=0xff;
delay_ms(500);
}
}
các bác ơi làm sao viết cho led chớp nháy đúng số lần minh mong muốn ạ. mong các bác giúp đỡ!
Dùng cái vòng for là được thôi mà. Ví dụ:
void main()
{
unsigned int8 i;
trisb=0x00;
portb=0xff;
for(i=0;i<10;i++) // 10 lan
{
portb=0;
delay_ms(500);
portb=0xff;
delay_ms(500);
}
while(true);
}
vupromax7209
30-03-2012, 09:26 AM
hê hê được rồi bác ạ!,cảm ơn bác nhiều
tuonghiendk7.1
09-08-2012, 11:07 PM
[QUOTE=congtri91;37514]em lập trình tắt bật led bằng ccsc nhưng khi mô phỏng nó lại ko chạy, cho e hỏi code sai chỗ nào ạ
#include <16F877A.h>
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
main()
{
set_tris_b(0x00);
output_low (portc);
while(true)
{
output_low (portb);
delay_ms(200);
output_high (portb);
delay_ms(200);
}
}
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.