PDA

View Full Version : cách thiết lập phần "Edit component" cho PIC18F4331 trong proteus 6.9??


dtv
10-04-2008, 05:18 PM
chào các bạn,
trong proteus 6.9, trong phần "edit component" của pic18f4331, các thiết lập phải viết dưới dạng text. Mình thử mô phỏng tắt sáng led trên chân RB7, mô phỏng trong proteus không chạy, báo lỗi. Mạch thực tế thì chạy tốt. Vậy phải giải quết ra sao :(( trong phần "Edit component"

Đoạn code như sau:

#include <18F4331.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000)


void main(){
set_tris_b(0);
port_b_pullups(FALSE);
setup_power_pwm_pins(PWM_OFF, PWM_OFF, PWM_OFF, PWM_OFF);
delay_ms(1);
output_B(0xff);
while(1){
delay_ms(1000);
output_toggle(PIN_B7);
}
}


mình thiết lập cho 18f4331 như sau:
{PACKAGE=DIL40}
{PRIMITIVE=DIGITAL,PIC18F4331}
{MODDLL=PIC18}
{MODDATA=256,255}
{ITFMOD=PIC}
{PROGRAM=sangled.HEX}
{CLOCK=20MHz}
{CFGWORD=0x3FFB}
{DBG_RANDOM_PMEM=0}
{DBG_RANDOM_DMEM=0}
{DBG_DUMP_CFGWORD=0}
{DBG_STARTUP_DELAY=0}
{DBG_WAKEUP_DELAY=0}
{DBG_ADC_BREAK=0}
{DBG_STACK=1}
{DBG_UNIMPLEMENTED_MEMORY=1}



Lỗi như sau:

SIMULATION LOG
==============
Design: C:\Documents and Settings\DAI HOC BACH KHOA\My Documents\vinh\thu nghiem 13\DK2DCDC.DSN
Doc. no.: <NONE>
Revision: <NONE>
Author: <NONE>
Created: 04/09/08
Modified: 10/04/08

Compiling source files...
Build completed OK.
Compiling netlist...
Linking netlist...
Partition analysis...

Simulating partition 1 [6F8D47F5]...
PROSPICE Release 6.9 SP5 (C) Labcenter Electronics 1993-2006.
SPICE Kernel Version 3f5. (C) Berkeley University ERL.

Reading netlist...
ERROR: [U1] PIC18.DLL failed to create MIXED model for primitive type 'PIC18F4331'.
Reading SPICE models...
Building circuit...
Warning: Net #00000 has no DC path to ground.
Check pins: U1-RA0/AN0, X015996AC#0-*
Warning: Net #00001 has no DC path to ground.
Check pins: U1-RA1/AN1, X015996AC#1-*
Warning: Net #00002 has no DC path to ground.
Check pins: U1-RA2/AN2/VREF-/CAP1/INDX, X015996AC#2-*
Warning: Net #00003 has no DC path to ground.
Check pins: U1-RA3/AN3/VREF+/CAP2/QEA, X015996AC#3-*
Warning: Net #00004 has no DC path to ground.
Check pins: U1-RA4/AN4/CAP3/QEB, X015996AC#4-*
Warning: Net #00005 has no DC path to ground.
Check pins: U1-RA5/AN5/LVDIN, X015996AC#5-*
Warning: Net #00006 has no DC path to ground.
Check pins: U1-RA6/OSC2/CLKO, X015996AC#6-*
Warning: Net #00007 has no DC path to ground.
Check pins: U1-RA7/OSC1/CLKI, X015996AC#7-*
Warning: Net #00008 has no DC path to ground.
Check pins: U1-RB0/PWM0, X015996AC#8-*
Warning: Net #00009 has no DC path to ground.
Check pins: U1-RB1/PWM1, X015996AC#9-*
Warning: Net #00010 has no DC path to ground.
Check pins: U1-RB2/PWM2, X015996AC#10-*
Warning: Net #00011 has no DC path to ground.
Check pins: U1-RB3/PWM3, X015996AC#11-*
Warning: Net #00012 has no DC path to ground.
Check pins: U1-RB4/PWM5/KBI0, X015996AC#12-*
Warning: Net #00013 has no DC path to ground.
Check pins: U1-RB5/PWM4/KBI1/PGM, X015996AC#13-*
Warning: Net #00014 has no DC path to ground.
Check pins: U1-RB6/KBI2/PGC, X015996AC#14-*
Warning: Net #00015 has no DC path to ground.
Check pins: U1-RC0/T1OSO/T1CKI, X015996AC#16-*
Warning: Net #00016 has no DC path to ground.
Check pins: U1-RC1/T1OSI/CCP2/$FLTA$, X015996AC#17-*
Warning: Net #00017 has no DC path to ground.
Check pins: U1-RC2/CCP1/$FLTB$, X015996AC#18-*
Warning: Net #00018 has no DC path to ground.
Check pins: U1-RC3/T0CKI/T5CLKI, X015996AC#19-*
Warning: Net #00019 has no DC path to ground.
Check pins: U1-RC4/INT1/SDI/SDA, X015996AC#20-*
Warning: Net #00020 has no DC path to ground.
Check pins: U1-RC5/INT2/SCK/SCL, X015996AC#21-*
Warning: Net #00021 has no DC path to ground.
Check pins: U1-RC6/TX/CK/$SS$, X015996AC#22-*
Warning: Net #00022 has no DC path to ground.
Check pins: U1-RC7/RX/TD/SDO, X015996AC#23-*
Warning: Net #00023 has no DC path to ground.
Check pins: U1-RD0/T0CKI/T5CKI, X015996AC#24-*
Warning: Net #00024 has no DC path to ground.
Check pins: U1-RD1/SDO, X015996AC#25-*
Warning: Net #00025 has no DC path to ground.
Check pins: U1-RD2/SDI/SDA, X015996AC#26-*
Warning: Net #00026 has no DC path to ground.
Check pins: U1-RD3/SCK/SCL, X015996AC#27-*
Warning: Net #00027 has no DC path to ground.
Check pins: U1-RD4/$FLTA$, X015996AC#28-*
Warning: Net #00028 has no DC path to ground.
Check pins: U1-RD5/PWM4, X015996AC#29-*
Warning: Net #00029 has no DC path to ground.
Check pins: U1-RD6/PWM6, X015996AC#30-*
Warning: Net #00030 has no DC path to ground.
Check pins: U1-RD7/PWM7, X015996AC#31-*
Warning: Net #00031 has no DC path to ground.
Check pins: U1-RE0/AN6, X015996AC#32-*
Warning: Net #00032 has no DC path to ground.
Check pins: U1-RE1/AN7, X015996AC#33-*
Warning: Net #00033 has no DC path to ground.
Check pins: U1-RE2/AN8, X015996AC#34-*
Warning: Net #00034 has no DC path to ground.
Check pins: U1-RE3/$MCLR$/VPP, X015996AC#35-*
Warning: Net #00037 has no DC path to ground.
Check pins: U1-AVDD
Warning: Net #00038 has no DC path to ground.
Check pins: U1-AVSS
Instantiating SPICE models...
Real Time Simulation failed to start
Totaliters=0, Totalsteps=0, Goodsteps=0, Badsteps=0


Simulation FAILED due to fatal simulator errors.

namqn
10-04-2008, 07:12 PM
PIC18F4331 có 7 từ cấu hình, bạn chỉ thiết lập 1 từ cấu hình thì chip có làm việc không?

Nếu trong mạch thực bạn không nối gì vào các chân MCLR, AVdd và AVss thì PIC có làm việc không?

Thân,

dtv
11-04-2008, 04:25 PM
PIC18F4331 có 7 từ cấu hình, bạn chỉ thiết lập 1 từ cấu hình thì chip có làm việc không?

Nếu trong mạch thực bạn không nối gì vào các chân MCLR, AVdd và AVss thì PIC có làm việc không?



Em đã thử thiết lập tất cả các từ cấu hình, sửa lại mạch mô phỏng trong proteus nhưng proteus vẫn báo lỗi như cũ. source code va mạch mô phỏng trong file .rar đính kèm

đoạn code sửa lại là:

#include <18F4331.h>

#FUSES HS //FOSC3 = 0, FOSC2 = 0, FOSC1 = 1, FOSC0 = 0
#FUSES IESO //Dao dong thach anh ngoai dang chay
#FUSES FCMEN //Cho phep PIC tiep tuc chay bang dao dong noi khi
//dao dong ngoai bi sai
#FUSES NOBROWNOUT //Khong reset PIC khi dien ap chan VDD roi xuong thap
#FUSES NOPUT //Khong su dung power up timer
#FUSES NOWDT //Khong su dung Watch-dog timer
#FUSES NOWINEN //Khong su dung WINEN, PIC se bi reset
#FUSES T1STANDARD //Mode dao dong cua timer1
#FUSES HPOL_HIGH //PWM1, 3, 5 and 7 are active-high, defaut
#FUSES LPOL_HIGH //PWM0, 2, 4 and 6 are active-high, defaut
#FUSES PWMPIN //Ngo ra cua PWM bi tat khi reset, defaut
#FUSES MCLR //Su dung chan MCLR, khong su dung chan RE3
#FUSES EXCLKD0 //T0CKI/T5CKI dung chung chan voi RD0
#FUSES PWM4B5 //PWM4 dung chung chan voi RB5
#FUSES SSP_RD //SDA/SDI dung chung chan voi RD3 and RD2
#FUSES FLTAC1 //FLTA chung chan voi RC1
#FUSES NODEBUG //RB6 va RB7 la cac chan I/O
#FUSES NOLVP //RB5 la chan I/O
#FUSES NOSTVREN //Stack full/underflow will not cause Reset
#FUSES NOPROTECT
#FUSES NOCPD
#FUSES NOCPB
#FUSES NOWRT
#FUSES NOWRTD
#FUSES NOWRTB
#FUSES NOWRTC
#FUSES NOEBTRB
#FUSES NOEBTR

#use delay(clock=20000000)
//#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

#USE FAST_IO(B)

void main(){
set_tris_b(0);
port_b_pullups(FALSE);
setup_power_pwm_pins(PWM_OFF, PWM_OFF, PWM_OFF, PWM_OFF);
delay_ms(1);
output_B(0xff);
while(1){
delay_ms(1000);
output_toggle(PIN_B7);
}
}


Chắc là em hiểu sai ý nghĩa của từ cấu hình :(