Page 3 of 13 FirstFirst 123456 ... LastLast
Results 21 to 30 of 122
  1. #21

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550


    imba. ikaw na jud bai red_horse. ikaw na. hahaha ni-work siya bai. salamat jud kaayo bai red_horse sa paggahin sa imung oras. d^^,b

    naa lang ko question ba, wala man ko kasabot nganu nag-initialize paka ug "PORTD = x;" , para asa diay to?
    ug nanu sad diay g-comment nimu ang "TRISB = 0x3F;"?

  2. #22

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    Ahahaha not needed na diay ni bro,
    TrisD = 0;
    PORTD = 0;
    PORTD = x;
    Kato man gud ng ga debug ko ganina. Ang value sa adc ako gipagawas sa PORTD para makit-an jud nako na ga-read jud ang A/D converter.
    Dili na sad ni siya needed bro,
    TRISB = 0x3F;
    Kay wa man ka gagamit sa PORTB, di ba? Please correct me if I'm wrong.

  3. #23

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    ahh, ok. nahibung lang ko ba nanu imu pa gi-initialize.
    and yes, dili ra man sad diay to gamit ang PORTB.

    bai red_horse, mauwaw naman unta ko mangutana pero wala man ko lain mapangutan-an sad gud. pasensyae nalang jud tawn ko bai ha? d^^,b
    about ni siya sa USART ug ADC ba, diba kung maggamit ka ug "USART_Write();" kay dapat man ASCII characters imu gamitun?
    for example: -1.23
    diba ang dapat code ani kay:
    Usart_Write(45);
    Usart_Write(48 );
    Usart_Write(".");
    Usart_Write(49);
    Usart_Write(50);

    ang akong problema kay taas man gud kaayo ang code para sa convertion gikan ADC value to ASCII, kadto gani mag-divide ug mag-modulo pa. well, dili man jud siya ingun na problema kay working man siya pero basin naa ka nahibaw-an na easier way dira ba. samukan ko mag-tan-aw gud kay taas kaau, murag dili professional ba, ang ako kay tinambal style raman gud. basta kay makuha lang ang value. hahaha

    actually, part ni sa thesis last year na amo dapat i-improve. PIC18F4550 gihapon, 8Mhz, Virtual terminal = 9600 baudrate, potentiometer as accelerometer.

    mao ni ang code ay:
    Spoiler: Code 
    signed long res, res1;
    signed double tlong;
    signed float rec1;
    signed char digit1, digit2, digit3, digit4;

    unsigned int cnt;

    void interrupt() {
    cnt++; // Increment value of cnt on every interrupt
    TMR0L = 96;
    INTCON = 0x20; // Set T0IE, clear T0IF
    }

    void readData(){
    TRISC = 0x00;
    PORTC = 0x20;

    res =ADC_Read(0);

    tlong = (long)res * 3300;
    tlong = tlong / 1024;

    rec1 = (tlong - 1650);
    rec1 = rec1 / 330;

    if ((tlong >= 1650)&&(tlong < 1980))
    {
    digit1 = 48;
    digit2 = 48;
    }
    else if ((tlong >= 1980)&&(tlong < 2310))
    {
    digit1 = 48;
    digit2 = 49;
    }
    else if ((tlong >= 2310)&&(tlong < 2640))
    {
    digit1 = 48;
    digit2 = 50;
    }
    else if ((tlong >= 2640)&&(tlong < 2970))
    {
    digit1 = 48;
    digit2 = 51;
    }
    else if ((tlong >= 2970)&&(tlong <3300))
    {
    digit1 = 48;
    digit2 = 52;
    }
    else if (tlong >= 3300)
    {
    digit1 = 45;
    digit2 = 53;
    }
    else if ((tlong > 1320)&&(tlong < 1650))
    {
    digit1 = 45;
    digit2 = 48;
    }
    else if ((tlong > 990)&&(tlong <= 1320))
    {
    digit1 = 45;
    digit2 = 49;
    }
    else if ((tlong > 660)&&(tlong <= 990))
    {
    digit1 = 45;
    digit2 = 50;
    }
    else if ((tlong > 330)&&(tlong <= 660))
    {
    digit1 = 45;
    digit2 = 51;
    }
    else if ((tlong > 0)&&(tlong <= 330))
    {
    digit1 = 45;
    digit2 = 52;
    }
    else if (tlong == 0)
    {
    digit1 = 45;
    digit2 = 53;
    }

    res = tlong - 1650;
    res = res/33;
    res = res%10;
    digit3 = 48 + res;

    if(digit3 == '/')
    {
    digit3 = 49;
    }
    if(digit3 == '.')
    {
    digit3 = 50;
    }
    if(digit3 == '-')
    {
    digit3 = 51;
    }
    if(digit3 == ',')
    {
    digit3 = 52;
    }
    if(digit3 == '+')
    {
    digit3 = 53;
    }
    if(digit3 == '*')
    {
    digit3 = 54;
    }
    if(digit3 == ')')
    {
    digit3 = 55;
    }
    if(digit3 == '(')
    {
    digit3 = 56;
    }
    if(digit3 == '\'')
    {
    digit3 = 57;
    }

    res1 = tlong - 1650;
    res1 = res1/(3.3);
    res1 = res1%10;
    digit4 = 48 + res1;

    if(digit4 == '/')
    {
    digit4 = 49;
    }
    if(digit4 == '.')
    {
    digit4 = 50;
    }
    if(digit4 == '-')
    {
    digit4 = 51;
    }
    if(digit4 == ',')
    {
    digit4 = 52;
    }
    if(digit4 == '+')
    {
    digit4 = 53;
    }
    if(digit4 == '*')
    {
    digit4 = 54;
    }
    if(digit4 == ')')
    {
    digit4 = 55;
    }
    if(digit4 == '(')
    {
    digit4 = 56;
    }
    if(digit4 == '\'')
    {
    digit4 = 57;
    }
    }

    void send_data(){
    Usart_Write('A');
    Usart_Write('T');
    Usart_Write('+');
    Usart_Write('C');
    Usart_Write('M');
    Usart_Write('G');
    Usart_Write('S');
    Usart_Write('=');
    Usart_Write('\"');
    Usart_Write('0');
    Usart_Write('9');
    Usart_Write('2');
    Usart_Write('2');
    Usart_Write('*');
    Usart_Write('*');
    Usart_Write('*');
    Usart_Write('*');
    Usart_Write('*');
    Usart_Write('*');
    Usart_Write('*');
    Usart_Write('\"');
    Usart_Write('\r');
    }

    void send_x_reading(){
    Usart_Write(digit1);
    Usart_Write(digit2);
    Usart_Write('.');
    Usart_Write(digit3);
    Usart_Write(digit4);
    }


    void main(){
    CMCON = 0x07;
    ADCON1 = 0x1C;
    TRISA = 0x0F;
    TRISB = 0x3F;
    TRISC = 0x00;
    PORTC = 0x00;

    T0CON = 0xC7; // Set TMR0 in 8bit mode, assign (256) prescaler to TMR0
    TMR0L = 96; // Timer0 initial value
    INTCON = 0xA0; // Enable TMRO interrupt
    cnt = 0; // Initialize cnt

    Usart_Init(9600);
    Usart_Write('A');
    Usart_Write('T');
    Usart_Write('\r');

    TRISB = 0x00;
    PORTB = 0xFF;
    Delay_ms(500);
    Usart_Write('A');
    Usart_Write('T');
    Usart_Write('+');
    Usart_Write('C');
    Usart_Write('M');
    Usart_Write('G');
    Usart_Write('F');
    Usart_Write('=');
    Usart_Write('1');
    Usart_Write('\r');
    TRISB = 0x00;
    PORTB = 0x00;
    Delay_ms(500);

    while(1){
    if(cnt==49){
    cnt=0;
    readData();
    send_data();
    Delay_ms(50);

    Usart_Write('X');
    send_x_reading();
    Delay_ms(50);
    Usart_Write(0x1A);
    Delay_ms(50);
    Usart_Write ('\r');
    }
    }
    }


    mao ni ang schematic:
    Spoiler: Schematic 


    ayaw lang kalain bai ha kung daghan najud kaayo ko pangutana nimu. d^^,b

  4. #24

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    Wala blema na bro.. Basta naa lang ko ikatubag.
    Medyo sleepy naman ko bro. Naa man gud dri curfew ug midnight na. Mo sleep na ko ron taud taud.
    Anyway amo ni sabot nako sa imo ganahan. First mo measure ka ug analog voltage then after that i-send nimo sa imo cellphone ang value? Insakto ba ko bro?

  5. #25

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    salamat bai.
    ayaw lang kaayo ka-stress, wala man sad ko gadali. slowly but surely man ning akoa. haha

    yes, bai, sakto ka. pero dili jud na analog voltage ang gi-send, g-convert pana into acceleration(in terms of g-unit). silbi, ang formula ani kay:

    x = [(Vread - Vinitial) / sensitivity]

    Vread = analog voltage reading in terms of Volts
    Vinitial = voltage reading at rest in terms of Volts (Vread=1.65V)
    Sensitivity = 330 mV/G (from datasheet ni, ADXL335 man ako gamit)

    hopefully masabtan ra. d^^,b

  6. #26

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    "ang akong problema kay taas man gud kaayo ang code para sa convertion gikan ADC value to ASCII"

    Kani man ako ginagamit bro pag extract sa ones,tenths, hundreds and thousands:

    DD0 = count%10; // Extract Ones Digit
    DD1 = (count/10)%10; // Extract Tens Digit
    DD2 = (count/100)%10; // Extract Hundreds Digit
    DD3 = (count/1000); // Extract Thousands Digit

    Then ako na sya i-convert to ascii,

    DD0 = DD0 +48;
    DD1 = DD1 +48;
    DD2 = DD2 +48;
    DD3 = DD3 +48;

    Then for example ako sya i-display sa LCD,

    Lcd_Chr (2,12,DD0);
    Lcd_Chr (2,11,DD1);
    Lcd_Chr (2,10,DD2);
    Lcd_Chr (2, 9,DD3);

    By the way mas maayo pud dagway imo sa i-convert ang ADC value to mV or volts, for example:

    temp_mV = ADC_Read(0); // Get 10-bit results of AD conversion
    temp_mV = temp_mV * 10000;
    temp_mV = temp_mV / 2048;

    Usa nimo gamiton imo conversion na,

    x = [(Vread - Vinitial) / sensitivity]

    I hope insakto ako sabot sa imo problem bro.

  7. #27

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    naganahan ko mokat.un og mikroC tungod ni red_horse..
    hinay2x ko'g kat.un sa akong free time.

    Btw, naa ba API ang MikroC bro red_horse?
    mura'g dali ra man siguro ni MikroC, naa na pud ko background gamit Hi-Tech PICC..

  8. #28

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    Hi master stealthghost.. Sorry wa ra ba ko kabalo about anang API.
    Nindot ang mikroC especially sa beginners kay daghan man gud siya tools and mga library.
    Dali ra jud makat-on ang mga newbie pareha na ko.
    Pero mas powerful ang Hi-Tech C master, mas flexible siya and daghan sad siya mga library na gamit kaayo na wala sa MikroC.

    Sir naa ko gigama na blog about sa PIC16F887 and mikroC. And naa ko gagmay and simple na videos.
    If you have time please check it out. Thanks!
    PIC16F887 Demo Board for Dummies!: Simple tutorials...

    Panagsa lang jud nako na ma update ky panagsa lang sad ko maka online. Daghan gani na wrong grammar and typos.
    Pero bahala na basta maka share lang.

  9. #29

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    ako na nasuwayan bai red_horse. ako gigamit imu method and mas limpyo gyud siya unya mas mubo napud akong code. salamat napud bai red_horse. d^^,b

    naa ko pangutana ba, nanu "10000" ug "2048" man imu gigamit, dili man "5000" ug "1024"?

    temp_mV = ADC_Read(0); // Get 10-bit results of AD conversion
    temp_mV = temp_mV * 10000; <----- sa diri
    temp_mV = temp_mV / 2048; <----- ug diri pud

    @ bai stealthghost: makalingaw jud magkat-on ug mikroC bai, easy to use raman gud. base from my very own experience. d^^,b

  10. #30

    Default Re: Need help: MikroC/MikroC Pro Compiler + PIC18F4550

    ^ ahahahaha yah nasayop ko dra. But pareha ra japun na sila results. Mas dako lang nuon ang product.
    Murag pwedi sad ni,

    temp_mV = temp_mV * 128;
    temp_mV = temp_mV / 625;

  11.    Advertisement

Page 3 of 13 FirstFirst 123456 ... LastLast

Similar Threads

 
  1. NEED HELP: Suzuki Raider J Pro-Modifications
    By PEDR0 in forum Automotive
    Replies: 21
    Last Post: 07-19-2011, 01:42 PM
  2. Replies: 15
    Last Post: 07-17-2010, 04:58 PM
  3. Need help from the pros..
    By lingkwyz in forum Programming
    Replies: 5
    Last Post: 10-06-2009, 03:55 PM
  4. Need help with XP pro
    By tracktrix in forum Software & Games (Old)
    Replies: 3
    Last Post: 06-20-2007, 11:11 AM
  5. mga WIN xp pros, i need help..:)
    By clarkhkent in forum Computer Hardware
    Replies: 10
    Last Post: 05-17-2006, 12:18 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
about us
We are the first Cebu Online Media.

iSTORYA.NET is Cebu's Biggest, Southern Philippines' Most Active, and the Philippines' Strongest Online Community!
follow us
#top