Aleluia! Say thanks to Rob which adjusted the usb serial lib with
interrupts.
The serial usb connectivity depends also on laptop and terminal. Use a
terminal which does not hang in a bunch of data. Do not disable intcon_gie
if use usb serial with interrupts. Do not expect to solve fast things in
pic while usb communication works. Maibe packing data and send it all from
time to time.
Nothing more to say.

On Fri 16 Dec 2022, 10:37 PM hans <hanze...@zeelandnet.nl wrote:

> Hi Vasile, Rob,
> Having often problems with the LVP I often disable this. I did this in the
> first program from Vasile and have forgotten this to mention.
> Doing the same in the last version and ....................IT WORKS
> !!!!!!!!!!!!!!!!!!!
> But i had to start the PICKIT several times again with all trics i know.
> GRRRRRR
> regards
> Hans
>
>
>
> Op vrijdag 16 december 2022 om 20:02:47 UTC+1 schreef rob...@hotmail.com:
>
>> Hi Hans, Vasile,
>>
>> What has been changed that it now works?
>>
>> If I look at the setting for the chip I do not see a difference with the
>> program that Hans had sent before.
>>
>> I see in the program below a delay of 5 seconds but that will cause a
>> problem.
>>
>> There are two ways to use the USB library, without interrupt (which used
>> to be the only way to use it) and with interrupt.
>>
>> If you use it without interrupt you have to call the *usb_serial_flush()
>> *routine regularly otherwise the USB wil stop working.
>>
>> If you cannot serve this function regulary then you should use the
>> library in the mode that is uses the interrupt which I see is being used in
>> the last example.
>>
>> If this 5 seconds delay was in the previous program then that may have
>> caused the USB problem.
>>
>> Kind regards,
>>
>> Rob
>>
>> ------------------------------
>> *Van:* jal...@googlegroups.com <jal...@googlegroups.com> namens hans <
>> hanz...@zeelandnet.nl>
>> *Verzonden:* vrijdag 16 december 2022 18:52
>>
>> *Aan:* jallib <jal...@googlegroups.com>
>> *Onderwerp:* Re: [jallib] USB_help
>> Hello Vasile
>> I have always worked as you indicated. Program, unplug everything and
>> then plug it back in. prompt response that the case was not recognized. See
>> my previous message.
>> Now your latest version, does nothing at all. Loaded the previous version
>> again and it works as stated before.
>> regards
>> Hans
>>
>> Op vrijdag 16 december 2022 om 18:07:52 UTC+1 schreef vasile:
>>
>> Hans,
>> I think you are doing in this way:
>> 1. USB connection is kept permanently between your board and PC
>> 2. your board is programmed with pickit and after programming you expect
>> to see immediately the pic USB device in your PC
>> right?
>>
>> After programming you have to disconnect your PC from USB and connect it
>> again, wait a bit until the computer sees your device.
>> I think the original sample will work in this way, however below is the
>> the sample (using interrupts) which should work without disconnecting your
>> PIC from USB after programming ( please note I did not tested, no
>> PIC18F4450 or PIC2550 available now).
>>
>> Finally you may comment the 5s delay if you wish, but you may loss the "
>> JALLIB USB Serial Demo" string.
>> Hopefully will work for you.
>>
>> -- ---------------------------------------
>> include 18f4550
>>
>>
>> -- even though the external crystal is 20 MHz, the configuration is such
>> that
>> -- the CPU clock is derived from the 96 Mhz PLL clock (div2), therefore
>> set
>> -- target frequency to 48 MHz
>> pragma target clock       48_000_000
>>
>>
>> -- fuses
>> pragma target PLLDIV        P5          -- divide by 5 - 20MHZ_INPUT
>> pragma target CPUDIV        P1          -- [primary oscillator src:
>> /1][96 mhz pll src: /2]
>> pragma target USBDIV        P2          -- CLOCK_SRC_FROM_96MHZ_PLL_2
>> pragma target OSC           HS_PLL
>> pragma target FCMEN         DISABLED
>> pragma target IESO          DISABLED
>> pragma target PWRTE         DISABLED    -- power up timer
>> pragma target VREGEN        ENABLED     -- USB voltage regulator
>> pragma target VOLTAGE       V21         -- brown out voltage
>>
>> pragma target BROWNOUT      DISABLED    -- no brownout detection
>> pragma target WDTPS         P32K        -- watch dog saler setting
>> pragma target WDT           CONTROL     -- watchdog software controlled
>> pragma target CCP2MUX       pin_C1      -- CCP2 on pin C1
>> pragma target PBADEN        DIGITAL     -- digital input port<0..4>
>> pragma target LPT1OSC       LOW_POWER   -- low power timer 1
>> pragma target MCLR          EXTERNAL    -- master reset on RE3
>> pragma target STVR          DISABLED    -- reset on stack over/under flow
>> pragma target LVP           ENABLED     -- allow low-voltage programming
>>
>> pragma target XINST         DISABLED     -- extended instruction set
>> pragma target DEBUG         DISABLED    -- background debugging
>> pragma target CP0           DISABLED    -- code block 0 not protected
>> pragma target CP1           DISABLED    -- code block 1 not protected
>> pragma target CP2           DISABLED    -- code block 2 not protected
>> pragma target CP3           DISABLED    -- code block 3 not protected
>> pragma target CPB           DISABLED    -- bootblock code not write
>> protected
>> pragma target CPD           DISABLED    -- eeprom code not write protected
>> pragma target WRT0          DISABLED    -- table writeblock 0 not
>> protected
>> pragma target WRT1          DISABLED    -- table write block 1 not
>> protected
>> pragma target WRT2          DISABLED    -- table write block 2 not
>> protected
>> pragma target WRT3          DISABLED    -- table write block 3 not
>> protected
>> pragma target WRTB          DISABLED    -- bootblock not write protected
>> pragma target WRTD          DISABLED    -- eeprom not write protected
>> pragma target WRTC          DISABLED    -- config not write protected
>> pragma target EBTR0         DISABLED    -- table read block 0 not
>> protected
>> pragma target EBTR1         DISABLED    -- table read block 1 not
>> protected
>> pragma target EBTR2         DISABLED    -- table read block 2 not
>> protected
>> pragma target EBTR3         DISABLED    -- table read block 3 not
>> protected
>> pragma target EBTRB         DISABLED    -- boot block not protected
>>
>> WDTCON_SWDTEN = OFF                     -- disable watchdog
>>
>> const USB_INTERRUPT_DRIVEN = TRUE
>> include delay
>> include usb_serial
>> include print
>>
>>
>> -- constants
>> const  byte str_welcome[] = "JALLIB USB Serial Demo app\n"
>>
>> -- variables
>>
>> -- interrupts? No thanks
>> -- INTCON_GIE = false
>>
>>
>> -- setup the USB serial library
>> usb_serial_init()
>>
>> var bit has_shown_welcome_msg = true
>> var byte ch
>>
>> delay_1s (5)
>>
>> -- main loop
>> forever loop
>>
>> if !defined(USB_INTERRUPT_DRIVEN) then
>>       -- When the interrupt mode is not used we need to poll the usb ISR
>> function
>>       -- on a regular base, in order to serve the USB requests otherwise
>>       -- this call can be removed.
>>       usb_serial_flush()
>>    end if
>>
>>     -- check if USB device has been configured by the HOST
>> if ( usb_cdc_line_status() !=  0x00 )  then
>> if !has_shown_welcome_msg then
>> has_shown_welcome_msg = true
>> print_string( usb_serial_data, str_welcome )
>> end if
>> else
>> has_shown_welcome_msg = false
>> end if
>>
>> -- check for input character
>> if usb_serial_read( ch ) then
>> -- echo input character
>> usb_serial_data = ch
>> end if
>>
>> end loop
>> -- -------------------------------------------------------
>>
>>
>>
>> On Fri, Dec 16, 2022 at 6:06 PM hans <hanz...@zeelandnet.nl> wrote:
>>
>> Hi Vasile,
>> With this the connection is accepted. i see a new com port and on a
>> terminal a bunch of values.
>>  I have to disconnect the Pickit.
>> Can you complete this with the example in the sample ?
>> great
>> Hans
>>
>> Op vrijdag 16 december 2022 om 15:46:26 UTC+1 schreef vasile:
>>
>> Hi Hans,
>> could you test the following code? Just change the include PIC18F2550
>> with PIC18F4550
>>
>> -- -------------------------------------------------
>> include 18f2550
>>
>> -- even though the external crystal is 20 MHz, the configuration is such
>> that
>> -- the CPU clock is derived from the 96 Mhz PLL clock (div2), therefore
>> set
>> -- target frequency to 48 MHz
>> pragma target clock       48_000_000
>>
>>
>> -- fuses
>> pragma target PLLDIV        P5          -- divide by 5 - 20MHZ_INPUT
>> pragma target CPUDIV        P1          -- [primary oscillator src:
>> /1][96 mhz pll src: /2]
>> pragma target USBDIV        P2          -- CLOCK_SRC_FROM_96MHZ_PLL_2
>> pragma target OSC           HS_PLL
>> pragma target FCMEN         DISABLED
>> pragma target IESO          DISABLED
>> pragma target PWRTE         DISABLED    -- power up timer
>> pragma target VREGEN        ENABLED     -- USB voltage regulator
>> pragma target VOLTAGE       V43         -- brown out voltage
>> pragma target BROWNOUT      DISABLED    -- no brownout detection
>> pragma target WDTPS         P32K        -- watch dog saler setting
>> pragma target WDT           CONTROL     -- watchdog software controlled
>> pragma target CCP2MUX       pin_C1      -- CCP2 on pin C1
>> pragma target PBADEN        DIGITAL     -- digital input port<0..4>
>> pragma target LPT1OSC       LOW_POWER   -- low power timer 1
>> pragma target MCLR          EXTERNAL    -- master reset on RE3
>> pragma target STVR          DISABLED    -- reset on stack over/under flow
>> pragma target LVP           DISABLED     -- allow low-voltage programming
>> pragma target XINST         DISABLED     -- extended instruction set
>> pragma target DEBUG         DISABLED    -- background debugging
>> pragma target CP0           DISABLED    -- code block 0 not protected
>> pragma target CP1           DISABLED    -- code block 1 not protected
>> pragma target CP2           DISABLED    -- code block 2 not protected
>> pragma target CP3           DISABLED    -- code block 3 not protected
>> pragma target CPB           DISABLED    -- bootblock code not write
>> protected
>> pragma target CPD           DISABLED    -- eeprom code not write protected
>> pragma target WRT0          DISABLED    -- table writeblock 0 not
>> protected
>> pragma target WRT1          DISABLED    -- table write block 1 not
>> protected
>> pragma target WRT2          DISABLED    -- table write block 2 not
>> protected
>> pragma target WRT3          DISABLED    -- table write block 3 not
>> protected
>> pragma target WRTB          DISABLED    -- bootblock not write protected
>> pragma target WRTD          DISABLED    -- eeprom not write protected
>> pragma target WRTC          DISABLED    -- config not write protected
>> pragma target EBTR0         DISABLED    -- table read block 0 not
>> protected
>> pragma target EBTR1         DISABLED    -- table read block 1 not
>> protected
>> pragma target EBTR2         DISABLED    -- table read block 2 not
>> protected
>> pragma target EBTR3         DISABLED    -- table read block 3 not
>> protected
>> pragma target EBTRB         DISABLED    -- boot block not protected
>>
>> WDTCON_SWDTEN = OFF                     -- disable watchdog
>>
>> const USB_INTERRUPT_DRIVEN = TRUE
>> include usb_serial
>> include print
>> include delay
>>
>> -- constants
>> ; const  byte str_welcome[] = "JALLIB USB Serial Demo app\n"
>>
>> -- setup the USB serial library
>> usb_serial_init()
>>
>> -- variables
>> var bit has_shown_welcome_msg = true
>> var byte ch
>> var dword counter_dw  = 0xFFFF_FFFF
>> var byte counter_b = 0
>> var word timer = 0
>>
>> delay_1s (5)
>>
>> -- main loop
>> forever loop
>>
>>    if !defined(USB_INTERRUPT_DRIVEN) then
>>       -- When the interrupt mode is not used we need to poll the usb ISR
>> function
>>       -- on a regular base, in order to serve the USB requests otherwise
>>       -- this call can be removed.
>>       usb_serial_flush()
>>    end if
>>
>>
>>
>> ;           timer = timer + 1
>> ;        if timer == 500 then
>> ;           timer = 0
>>
>> ;           print_byte_dec (usb_serial_data, counter_b)
>> ;           _usec_delay( 1 )
>> ;           usb_serial_data = " "
>>            print_dword_dec( usb_serial_data, counter_dw )
>> ;           _usec_delay( 1 )
>>            print_crlf(usb_serial_data)
>> ;           counter_dw = counter_dw + 1
>> ;           counter_b = counter_b + 1
>> ;        end if
>> ;           _usec_delay( 1 )
>>
>> end loop
>>
>> On Fri, Dec 16, 2022 at 3:20 PM hans <hanz...@zeelandnet.nl> wrote:
>>
>> Hey ,
>> I have now received the 18F4550 and the 16F1455 and have tried both with
>> the usb_serial samples. programming with PicKit_3, but in all cases I get a
>> warning on my PC (both on win10 and win7) that the USB is not recognized.
>> The Vusb with capacitor reads 3.3 volts and I have programmed both with and
>> without LVP. identical to my previous attempts.
>> Apparently USB is not allowed to me
>> Hans
>>
>> Op woensdag 14 december 2022 om 14:19:16 UTC+1 schreef zet....@gmail.com:
>>
>> Hi Matt
>>
>> I see your question 10-12 now: Wednesday 14-12
>>
>> I am not at home for 2 days.
>>
>> I can test. You hear as soon as possible.
>>
>>
>>
>> Regards
>>
>> Peter
>>
>>
>>
>> *Van:* jal...@googlegroups.com [mailto:jal...@googlegroups.com] *Namens 
>> *Matthew
>> Schinkel
>> *Verzonden:* zondag 11 december 2022 04:18
>> *Aan:* jallib <jal...@googlegroups.com>
>> *Onderwerp:* Re: [jallib] USB_help
>>
>>
>>
>> Hi Hans, what chip is it working on?
>>
>>
>>
>> Is anyone else able to test the 18f4455 blink usb sample?
>>
>> On Saturday, December 10, 2022 at 1:18:39 PM UTC-5 hans wrote:
>>
>> Hello, I tested the sample 18f4455 Blink_hs_usb.jal. This one didn't
>> work. Then I restarted Bert van Dam's old business and tried the same
>> program on it. that works as it should.!!!!
>> I have also tested ports D+ and D- (24 and 23) as inputs and those ports
>> work as well. I now doubt whether the PIC is broken or something else is
>> going on.
>> regards
>> Hans
>>
>> Op zaterdag 10 december 2022 om 10:30:14 UTC+1 schreef hans:
>>
>> Hello champs,
>> I have reassembled everything and I can only conclude that the PIC itself
>> (has done some things before) is defective. Unfortunately, I no longer have
>> a PIC with USB, so I put it back in the fridge. I will have to look for
>> another one but the market is scarce.
>> Thanks again for your great responses.
>> regards
>> Hans
>>
>> Op zaterdag 10 december 2022 om 06:18:17 UTC+1 schreef vasile:
>>
>> Yep. Matt has right.
>>
>> 1.The clock speed is esential.
>>
>> 2. You will notice quite a long delay (5s or so) between plugging the pic
>> usb and the moment when OS recognize it on pc. This depends by your
>> computer speed and pic firmware contents. If pic clk is wrong, you will not
>> see any usb device. After it appears, check on printer/pheripheral for your
>> device but watch for any warnings there....
>>
>> On Sat 10 Dec 2022, 4:59 AM Matthew Schinkel <mattsc...@hotmail.com
>> wrote:
>>
>> Also use the code in 18f455_blink_hs_usb.jal
>>
>>
>>
>> You are missing this one:
>>
>> OSCCON_SCS = 0                      -- select primary oscillator
>>
>> On Friday, December 9, 2022 at 9:54:43 PM UTC-5 Matthew Schinkel wrote:
>>
>> Hi Hans,
>>
>>
>>
>> There must be an issue with your circuit. Do you have the correct clock
>> speed? Make sure a blink sample and normal serial port is working. Try
>> another PC. Windows should pick it up.
>>
>>
>>
>> Matt.
>>
>> On Friday, December 9, 2022 at 3:12:12 PM UTC-5 hans wrote:
>>
>> Hello,
>> Thank you. I did what you recommended. Last Bee and tip from Vasile. Same
>> message from windows, not recognized and causing a malfunction. Pffffff/
>> regards
>> Hans
>>
>> Op vrijdag 9 december 2022 om 18:43:24 UTC+1 schreef rob...@hotmail.com:
>>
>> Hi Hans,
>>
>>
>>
>> As Vasile already mentioned Windows 10 will detect your device as a
>> serial (COM) port without the need of installing a separate driver.
>>
>>
>>
>> Make sure you have the USB connections right. The signals are not crossed
>> like for USART, so D+ to D+ and D- to D-.
>>
>>
>>
>> I attached a schematic diagram based on the PIC16F1455 for your
>> information and the USB connectors and what the signals look like.
>>
>>
>>
>> Good luck!
>>
>>
>>
>> Kind regards,
>>
>>
>> Rob
>>
>>
>> ------------------------------
>>
>> *Van:* jal...@googlegroups.com <jal...@googlegroups.com> namens
>> vsurducan <vsur...@gmail.com>
>> *Verzonden:* vrijdag 9 december 2022 18:12
>> *Aan:* jal...@googlegroups.com <jal...@googlegroups.com>
>> *Onderwerp:* Re: [jallib] USB_help
>>
>>
>>
>> Hi Hans,
>>
>> for win10 you do not need any special driver, just a good terminal like
>> Teraterm.
>>
>> Download the last jal package, Rob did some modifications on USB driver,
>>
>> my suggestion is to use const USB_INTERRUPT_DRIVEN = TRUE
>>
>> The maximum speed is about 100kbps.
>>
>>
>>
>>
>>
>>
>>
>> On Fri, Dec 9, 2022 at 5:42 PM hans <hanz...@zeelandnet.nl> wrote:
>>
>> Hello,
>> I am trying to learn more about USB and have tried a sample program( ex
>> 18F2450)  (see attachment) I keep getting the remark that windows 10 does
>> not recognize the connection and cannot install the driver. What am I doing
>> wrong??
>> regards
>> Hans
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/c92e6cb2-a584-4b1b-a77f-d8bf943560b2n%40googlegroups.com
>> <https://groups.google.com/d/msgid/jallib/c92e6cb2-a584-4b1b-a77f-d8bf943560b2n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>>
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/CAM%2Bj4quO70sp3CP%2BezE5_6jDU%2BpsJ2D7-MAU9bzRm1U1RbmACA%40mail.gmail.com
>> <https://groups.google.com/d/msgid/jallib/CAM%2Bj4quO70sp3CP%2BezE5_6jDU%2BpsJ2D7-MAU9bzRm1U1RbmACA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>>
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/df1d95ac-2ed5-46e2-80c6-47021bf19395n%40googlegroups.com
>> <https://groups.google.com/d/msgid/jallib/df1d95ac-2ed5-46e2-80c6-47021bf19395n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>>
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/1c3098ea-5a51-4e41-a148-9782036d4b34n%40googlegroups.com
>> <https://groups.google.com/d/msgid/jallib/1c3098ea-5a51-4e41-a148-9782036d4b34n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>>
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/4a8e384e-f796-4b51-b9ea-ab93e2336a96n%40googlegroups.com
>> <https://groups.google.com/d/msgid/jallib/4a8e384e-f796-4b51-b9ea-ab93e2336a96n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>>
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/4c0c588f-12b8-47cb-a9c3-e8f21dd63f9an%40googlegroups.com
>> <https://groups.google.com/d/msgid/jallib/4c0c588f-12b8-47cb-a9c3-e8f21dd63f9an%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jallib" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jallib+un...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jallib/7ae2a91b-f74b-43f5-b14a-247a8d6afa20n%40googlegroups.com
>> <https://groups.google.com/d/msgid/jallib/7ae2a91b-f74b-43f5-b14a-247a8d6afa20n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "jallib" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jallib+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jallib/6413a27f-5df9-44d0-a18c-7040f7fedc94n%40googlegroups.com
> <https://groups.google.com/d/msgid/jallib/6413a27f-5df9-44d0-a18c-7040f7fedc94n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jallib+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jallib/CAM%2Bj4qvyHWMUwUzVbx%2BEuHdADjzY6WhWKCUMQv4GQ-wgg45ECw%40mail.gmail.com.

Reply via email to