Discussion:
Xpress PIC16F18446 Evaluation Board
Jan-Erik Söderholm
2018-07-07 12:42:45 UTC
Permalink
Hi.



Received the “Xpress PIC16F18446 Evaluation Board” board this week.
I have read the user guide, but I cannot find any clear info around how
to program the device. The closes is the text on the web page that says:



“Drag-and-Drop Programming:

Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and easy.
We've integrated a unique drag-and-drop programmer for compatibility with
almost
any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation board
connects
to your PC as a USB Flash drive, so no drivers are needed. Programming of
the target
device is completed in microseconds, with no waiting. The evaluation board
makes it
quick and easy to build a working prototype in a short period of time.”



http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board



OK, right. But how? Where to “drop” the file (an hex file?). In the root of
the
emulated device? In some directory? With some special file name?



Does the integrated support in MPLAB X handle this automatically?



Have any one got their board running successfully yet?



Jan-Erik.

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Chris Roper
2018-07-07 12:51:02 UTC
Permalink
It should appear on your PC as a Drive Letter.
Just drop the Hex file in that virtual drive and it will flash the device.

Cheers
Chris


On 7 July 2018 at 14:42, Jan-Erik Söderholm <jan-***@telia.com>
wrote:

> Hi.
>
>
>
> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> I have read the user guide, but I cannot find any clear info around how
> to program the device. The closes is the text on the web page that says:
>
>
>
> “Drag-and-Drop Programming:
>
> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> easy.
> We've integrated a unique drag-and-drop programmer for compatibility with
> almost
> any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation board
> connects
> to your PC as a USB Flash drive, so no drivers are needed. Programming of
> the target
> device is completed in microseconds, with no waiting. The evaluation board
> makes it
> quick and easy to build a working prototype in a short period of time.”
>
>
>
> http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board
>
>
>
> OK, right. But how? Where to “drop” the file (an hex file?). In the root of
> the
> emulated device? In some directory? With some special file name?
>
>
>
> Does the integrated support in MPLAB X handle this automatically?
>
>
>
> Have any one got their board running successfully yet?
>
>
>
> Jan-Erik.
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/li
Jean-Paul Louis
2018-07-07 14:08:50 UTC
Permalink
My Macbook didn't see the board at all. Doesn't even show as USB device.
I'm not sure where to go from here.

Jean-Paul
N1JPL

On Sat, Jul 7, 2018, 8:51 AM Chris Roper <***@gmail.com> wrote:

> It should appear on your PC as a Drive Letter.
> Just drop the Hex file in that virtual drive and it will flash the device.
>
> Cheers
> Chris
>
>
> On 7 July 2018 at 14:42, Jan-Erik Söderholm <jan-***@telia.com>
> wrote:
>
> > Hi.
> >
> >
> >
> > Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > I have read the user guide, but I cannot find any clear info around how
> > to program the device. The closes is the text on the web page that says:
> >
> >
> >
> > “Drag-and-Drop Programming:
> >
> > Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> > easy.
> > We've integrated a unique drag-and-drop programmer for compatibility with
> > almost
> > any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> board
> > connects
> > to your PC as a USB Flash drive, so no drivers are needed. Programming of
> > the target
> > device is completed in microseconds, with no waiting. The evaluation
> board
> > makes it
> > quick and easy to build a working prototype in a short period of time.”
> >
> >
> >
> > http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board
> >
> >
> >
> > OK, right. But how? Where to “drop” the file (an hex file?). In the root
> of
> > the
> > emulated device? In some directory? With some special file name?
> >
> >
> >
> > Does the integrated support in MPLAB X handle this automatically?
> >
> >
> >
> > Have any one got their board running successfully yet?
> >
> >
> >
> > Jan-Erik.
> >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http
Ryan O'Connor
2018-07-08 21:58:53 UTC
Permalink
Does anyone know how to get the Xpress PIC16F18446 Evaluation Board to show
up on windows? When I connect it via micro USB cable, nothing happens. No
installation, no drive letter, nothing new under Device Manager. Is there a
driver somewhere that I need to install?

Cheers,
Ryan

On Sun, 8 Jul 2018 at 00:51, Chris Roper <***@gmail.com> wrote:

> It should appear on your PC as a Drive Letter.
> Just drop the Hex file in that virtual drive and it will flash the device.
>
> Cheers
> Chris
>
>
> On 7 July 2018 at 14:42, Jan-Erik Söderholm <jan-***@telia.com>
> wrote:
>
> > Hi.
> >
> >
> >
> > Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > I have read the user guide, but I cannot find any clear info around how
> > to program the device. The closes is the text on the web page that says:
> >
> >
> >
> > “Drag-and-Drop Programming:
> >
> > Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> > easy.
> > We've integrated a unique drag-and-drop programmer for compatibility with
> > almost
> > any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> board
> > connects
> > to your PC as a USB Flash drive, so no drivers are needed. Programming of
> > the target
> > device is completed in microseconds, with no waiting. The evaluation
> board
> > makes it
> > quick and easy to build a working prototype in a short period of time.”
> >
> >
> >
> > http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board
> >
> >
> >
> > OK, right. But how? Where to “drop” the file (an hex file?). In the root
> of
> > the
> > emulated device? In some directory? With some special file name?
> >
> >
> >
> > Does the integrated support in MPLAB X handle this automatically?
> >
> >
> >
> > Have any one got their board running successfully yet?
> >
> >
> >
> > Jan-Erik.
> >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.e
Chris Roper
2018-07-08 22:13:57 UTC
Permalink
Take a look as this thread on the GCBasic Forum.
It address the issues and correspondence with MicroChip
The forum also has some working examples.

Cheers
Chris


On 8 July 2018 at 23:58, Ryan O'Connor <***@gmail.com> wrote:

> Does anyone know how to get the Xpress PIC16F18446 Evaluation Board to show
> up on windows? When I connect it via micro USB cable, nothing happens. No
> installation, no drive letter, nothing new under Device Manager. Is there a
> driver somewhere that I need to install?
>
> Cheers,
> Ryan
>
> On Sun, 8 Jul 2018 at 00:51, Chris Roper <***@gmail.com> wrote:
>
> > It should appear on your PC as a Drive Letter.
> > Just drop the Hex file in that virtual drive and it will flash the
> device.
> >
> > Cheers
> > Chris
> >
> >
> > On 7 July 2018 at 14:42, Jan-Erik Söderholm <
> jan-***@telia.com>
> > wrote:
> >
> > > Hi.
> > >
> > >
> > >
> > > Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > > I have read the user guide, but I cannot find any clear info around how
> > > to program the device. The closes is the text on the web page that
> says:
> > >
> > >
> > >
> > > “Drag-and-Drop Programming:
> > >
> > > Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> > > easy.
> > > We've integrated a unique drag-and-drop programmer for compatibility
> with
> > > almost
> > > any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> > board
> > > connects
> > > to your PC as a USB Flash drive, so no drivers are needed. Programming
> of
> > > the target
> > > device is completed in microseconds, with no waiting. The evaluation
> > board
> > > makes it
> > > quick and easy to build a working prototype in a short period of time.”
> > >
> > >
> > >
> > > http://www.microchip.com/promo/mplab-xpress-
> pic16f18446-evaluation-board
> > >
> > >
> > >
> > > OK, right. But how? Where to “drop” the file (an hex file?). In the
> root
> > of
> > > the
> > > emulated device? In some directory? With some special file name?
> > >
> > >
> > >
> > > Does the integrated support in MPLAB X handle this automatically?
> > >
> > >
> > >
> > > Have any one got their board running successfully yet?
> > >
> > >
> > >
> > > Jan-Erik.
> > >
> > > --
> > > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > > View/change your membership options at
> > > http://mailman.mit.edu/mailman/listinfo/piclist
> > >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/
C. Abney
2018-07-07 19:55:15 UTC
Permalink
On 7/7/18, Jan-Erik Söderholm <jan-***@telia.com> wrote:
> Hi.

> OK, right. But how? Where to “drop” the file (an hex file?). In the root of
> the
> emulated device? In some directory? With some special file name?

On Debian Linux, a (usb)drive named "Curiosity" appears on the file
system, and if you open it with your file manager, there are a number
of files located there.

That is also where you drop your (appropriately targeted and compiled)
.hex file.

Try it with the attached file. :)

> Does the integrated support in MPLAB X handle this automatically?

MPLABX knows zip about nEDBG, and you can only do it with your default
file management techniques. (cp file/a location/b, e.g.).

CA
--
If you're in my band you can't have too much of a sense of dignity. --
"Weird Al" Yankovic
Chris Roper
2018-07-07 20:20:03 UTC
Permalink
There is a lot of discussion about this on the GCBASIC compiler forum.
There are a few open tickets with Microchip and a few that have been
answered.
I know a few of the forum members use Mac so you may find a workaround
there.
Here is a link to get you started
https://sourceforge.net/p/gcbasic/discussion/demonstrationcode/thread/97d1ec43/?limit=25

My boards are still lost in the post, so I can help with the Device but not
the board.

Cheers
Chris
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-07 23:15:43 UTC
Permalink
Hi.



Received the “Xpress PIC16F18446 Evaluation Board” board this week.
I have read the user guide, but I cannot find any clear info around how
to program the device. The closes is the text on the web page that says:



“Drag-and-Drop Programming:

Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and easy.
We've integrated a unique drag-and-drop programmer for compatibility with
almost
any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation board
connects
to your PC as a USB Flash drive, so no drivers are needed. Programming of
the target
device is completed in microseconds, with no waiting. The evaluation board
makes it
quick and easy to build a working prototype in a short period of time.”



http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board



OK, right. But how? Where to “drop” the file (an hex file?). In the root of
the
emulated device? In some directory? With some special file name?



Does the integrated support in MPLAB X handle this automatically?



Have any one got their board running successfully yet?



Jan-Erik.



--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
John Ferrell
2018-07-07 23:28:57 UTC
Permalink
I get more lazy every day. At this time I will check YouTube
occasionally for


"16f18446"


On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> Hi.
>
>
>
> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> I have read the user guide, but I cannot find any clear info around how
> to program the device. The closes is the text on the web page that says:
>
>
>
> “Drag-and-Drop Programming:
>
> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and easy.
> We've integrated a unique drag-and-drop programmer for compatibility with
> almost
> any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation board
> connects
> to your PC as a USB Flash drive, so no drivers are needed. Programming of
> the target
> device is completed in microseconds, with no waiting. The evaluation board
> makes it
> quick and easy to build a working prototype in a short period of time.”
>
>
>
> http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board
>
>
>
> OK, right. But how? Where to “drop” the file (an hex file?). In the root of
> the
> emulated device? In some directory? With some special file name?
>
>
>
> Does the integrated support in MPLAB X handle this automatically?
>
>
>
> Have any one got their board running successfully yet?
>
>
>
> Jan-Erik.
>

--
John Ferrell W8CCW
Julian NC 27283
It is better to walk alone,
than with a crowd going the wrong direction.
--Diane Grant

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Michael Johnston
2018-07-07 23:49:18 UTC
Permalink
So I haven't really looked at this yet but my question is can you debug a
program on it like you where using the PICKIT3 or the ICD3
thanks
Michael Johnston

On Sat, Jul 7, 2018 at 6:29 PM John Ferrell <***@triad.rr.com> wrote:

> I get more lazy every day. At this time I will check YouTube
> occasionally for
>
>
> "16f18446"
>
>
> On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> > Hi.
> >
> >
> >
> > Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > I have read the user guide, but I cannot find any clear info around how
> > to program the device. The closes is the text on the web page that says:
> >
> >
> >
> > “Drag-and-Drop Programming:
> >
> > Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> easy.
> > We've integrated a unique drag-and-drop programmer for compatibility with
> > almost
> > any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> board
> > connects
> > to your PC as a USB Flash drive, so no drivers are needed. Programming of
> > the target
> > device is completed in microseconds, with no waiting. The evaluation
> board
> > makes it
> > quick and easy to build a working prototype in a short period of time.”
> >
> >
> >
> > http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board
> >
> >
> >
> > OK, right. But how? Where to “drop” the file (an hex file?). In the root
> of
> > the
> > emulated device? In some directory? With some special file name?
> >
> >
> >
> > Does the integrated support in MPLAB X handle this automatically?
> >
> >
> >
> > Have any one got their board running successfully yet?
> >
> >
> >
> > Jan-Erik.
> >
>
> --
> John Ferrell W8CCW
> Julian NC 27283
> It is better to walk alone,
> than with a crowd going the wrong direction.
> --Diane Grant
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
h
Chris Roper
2018-07-08 05:56:31 UTC
Permalink
No.
The debug portion of the Programmer only works with Atmel Studio and has
not been activated on the demo boards.


On 8 July 2018 at 01:49, Michael Johnston <***@gmail.com>
wrote:

> So I haven't really looked at this yet but my question is can you debug a
> program on it like you where using the PICKIT3 or the ICD3
> thanks
> Michael Johnston
>
> On Sat, Jul 7, 2018 at 6:29 PM John Ferrell <***@triad.rr.com>
> wrote:
>
> > I get more lazy every day. At this time I will check YouTube
> > occasionally for
> >
> >
> > "16f18446"
> >
> >
> > On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> > > Hi.
> > >
> > >
> > >
> > > Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > > I have read the user guide, but I cannot find any clear info around how
> > > to program the device. The closes is the text on the web page that
> says:
> > >
> > >
> > >
> > > “Drag-and-Drop Programming:
> > >
> > > Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> > easy.
> > > We've integrated a unique drag-and-drop programmer for compatibility
> with
> > > almost
> > > any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> > board
> > > connects
> > > to your PC as a USB Flash drive, so no drivers are needed. Programming
> of
> > > the target
> > > device is completed in microseconds, with no waiting. The evaluation
> > board
> > > makes it
> > > quick and easy to build a working prototype in a short period of time.”
> > >
> > >
> > >
> > > http://www.microchip.com/promo/mplab-xpress-
> pic16f18446-evaluation-board
> > >
> > >
> > >
> > > OK, right. But how? Where to “drop” the file (an hex file?). In the
> root
> > of
> > > the
> > > emulated device? In some directory? With some special file name?
> > >
> > >
> > >
> > > Does the integrated support in MPLAB X handle this automatically?
> > >
> > >
> > >
> > > Have any one got their board running successfully yet?
> > >
> > >
> > >
> > > Jan-Erik.
> > >
> >
> > --
> > John Ferrell W8CCW
> > Julian NC 27283
> > It is better to walk alone,
> > than with a crowd going the wrong direction.
> > --Diane Grant
> >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/pic
Michael Johnston
2018-07-08 12:13:54 UTC
Permalink
Hi Chris, I appreciate that, as the information that I have received is very vaque. The next question is can you write a program on mplabx on my computer and program it from there to or does only work online? Thank You Michael

Sent from my iPhone

> On Jul 8, 2018, at 12:56 AM, Chris Roper <***@gmail.com> wrote:
>
> No.
> The debug portion of the Programmer only works with Atmel Studio and has
> not been activated on the demo boards.
>
>
> On 8 July 2018 at 01:49, Michael Johnston <***@gmail.com>
> wrote:
>
>> So I haven't really looked at this yet but my question is can you debug a
>> program on it like you where using the PICKIT3 or the ICD3
>> thanks
>> Michael Johnston
>>
>> On Sat, Jul 7, 2018 at 6:29 PM John Ferrell <***@triad.rr.com>
>> wrote:
>>
>>> I get more lazy every day. At this time I will check YouTube
>>> occasionally for
>>>
>>>
>>> "16f18446"
>>>
>>>
>>>> On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
>>>> Hi.
>>>>
>>>>
>>>>
>>>> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
>>>> I have read the user guide, but I cannot find any clear info around how
>>>> to program the device. The closes is the text on the web page that
>> says:
>>>>
>>>>
>>>>
>>>> “Drag-and-Drop Programming:
>>>>
>>>> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
>>> easy.
>>>> We've integrated a unique drag-and-drop programmer for compatibility
>> with
>>>> almost
>>>> any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
>>> board
>>>> connects
>>>> to your PC as a USB Flash drive, so no drivers are needed. Programming
>> of
>>>> the target
>>>> device is completed in microseconds, with no waiting. The evaluation
>>> board
>>>> makes it
>>>> quick and easy to build a working prototype in a short period of time.”
>>>>
>>>>
>>>>
>>>> http://www.microchip.com/promo/mplab-xpress-
>> pic16f18446-evaluation-board
>>>>
>>>>
>>>>
>>>> OK, right. But how? Where to “drop” the file (an hex file?). In the
>> root
>>> of
>>>> the
>>>> emulated device? In some directory? With some special file name?
>>>>
>>>>
>>>>
>>>> Does the integrated support in MPLAB X handle this automatically?
>>>>
>>>>
>>>>
>>>> Have any one got their board running successfully yet?
>>>>
>>>>
>>>>
>>>> Jan-Erik.
>>>>
>>>
>>> --
>>> John Ferrell W8CCW
>>> Julian NC 27283
>>> It is better to walk alone,
>>> than with a crowd going the wrong direction.
>>> --Diane Grant
>>>
>>> --
>>> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
>>> View/change your membership options at
>>> http://mailman.mit.edu/mailman/listinfo/piclist
>>>
>> --
>> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
>> View/change your membership options at
>> http://mailman.mit.edu/mailman/listinfo/piclist
>>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership opt
Chris Roper
2018-07-08 12:40:02 UTC
Permalink
As long as it shows up on your PC as a virtual Disk then yes.
You just generate the hex file in MPLab then use the file system to copy it
to the virtual disk which Flashes the part.


On 8 July 2018 at 14:13, Michael Johnston <***@gmail.com>
wrote:

> Hi Chris, I appreciate that, as the information that I have received is
> very vaque. The next question is can you write a program on mplabx on my
> computer and program it from there to or does only work online? Thank You
> Michael
>
> Sent from my iPhone
>
> > On Jul 8, 2018, at 12:56 AM, Chris Roper <***@gmail.com> wrote:
> >
> > No.
> > The debug portion of the Programmer only works with Atmel Studio and has
> > not been activated on the demo boards.
> >
> >
> > On 8 July 2018 at 01:49, Michael Johnston <***@gmail.com>
> > wrote:
> >
> >> So I haven't really looked at this yet but my question is can you debug
> a
> >> program on it like you where using the PICKIT3 or the ICD3
> >> thanks
> >> Michael Johnston
> >>
> >> On Sat, Jul 7, 2018 at 6:29 PM John Ferrell <***@triad.rr.com>
> >> wrote:
> >>
> >>> I get more lazy every day. At this time I will check YouTube
> >>> occasionally for
> >>>
> >>>
> >>> "16f18446"
> >>>
> >>>
> >>>> On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> >>>> Hi.
> >>>>
> >>>>
> >>>>
> >>>> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> >>>> I have read the user guide, but I cannot find any clear info around
> how
> >>>> to program the device. The closes is the text on the web page that
> >> says:
> >>>>
> >>>>
> >>>>
> >>>> “Drag-and-Drop Programming:
> >>>>
> >>>> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick and
> >>> easy.
> >>>> We've integrated a unique drag-and-drop programmer for compatibility
> >> with
> >>>> almost
> >>>> any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> >>> board
> >>>> connects
> >>>> to your PC as a USB Flash drive, so no drivers are needed. Programming
> >> of
> >>>> the target
> >>>> device is completed in microseconds, with no waiting. The evaluation
> >>> board
> >>>> makes it
> >>>> quick and easy to build a working prototype in a short period of
> time.”
> >>>>
> >>>>
> >>>>
> >>>> http://www.microchip.com/promo/mplab-xpress-
> >> pic16f18446-evaluation-board
> >>>>
> >>>>
> >>>>
> >>>> OK, right. But how? Where to “drop” the file (an hex file?). In the
> >> root
> >>> of
> >>>> the
> >>>> emulated device? In some directory? With some special file name?
> >>>>
> >>>>
> >>>>
> >>>> Does the integrated support in MPLAB X handle this automatically?
> >>>>
> >>>>
> >>>>
> >>>> Have any one got their board running successfully yet?
> >>>>
> >>>>
> >>>>
> >>>> Jan-Erik.
> >>>>
> >>>
> >>> --
> >>> John Ferrell W8CCW
> >>> Julian NC 27283
> >>> It is better to walk alone,
> >>> than with a crowd going the wrong direction.
> >>> --Diane Grant
> >>>
> >>> --
> >>> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> >>> View/change your membership options at
> >>> http://mailman.mit.edu/mailman/listinfo/piclist
> >>>
> >> --
> >> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> >> View/change your membership options at
> >> http://mailman.mit.edu/mailman/listinfo/piclist
> >>
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http:/
Michael Johnston
2018-07-08 13:17:46 UTC
Permalink
Thank you, I received two of them and gave one of them away last week to
guy at work who is a computer science major at a local college.

On Sun, Jul 8, 2018 at 7:40 AM Chris Roper <***@gmail.com> wrote:

> As long as it shows up on your PC as a virtual Disk then yes.
> You just generate the hex file in MPLab then use the file system to copy it
> to the virtual disk which Flashes the part.
>
>
> On 8 July 2018 at 14:13, Michael Johnston <***@gmail.com>
> wrote:
>
> > Hi Chris, I appreciate that, as the information that I have received is
> > very vaque. The next question is can you write a program on mplabx on my
> > computer and program it from there to or does only work online? Thank You
> > Michael
> >
> > Sent from my iPhone
> >
> > > On Jul 8, 2018, at 12:56 AM, Chris Roper <***@gmail.com> wrote:
> > >
> > > No.
> > > The debug portion of the Programmer only works with Atmel Studio and
> has
> > > not been activated on the demo boards.
> > >
> > >
> > > On 8 July 2018 at 01:49, Michael Johnston <***@gmail.com
> >
> > > wrote:
> > >
> > >> So I haven't really looked at this yet but my question is can you
> debug
> > a
> > >> program on it like you where using the PICKIT3 or the ICD3
> > >> thanks
> > >> Michael Johnston
> > >>
> > >> On Sat, Jul 7, 2018 at 6:29 PM John Ferrell <***@triad.rr.com>
> > >> wrote:
> > >>
> > >>> I get more lazy every day. At this time I will check YouTube
> > >>> occasionally for
> > >>>
> > >>>
> > >>> "16f18446"
> > >>>
> > >>>
> > >>>> On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> > >>>> Hi.
> > >>>>
> > >>>>
> > >>>>
> > >>>> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > >>>> I have read the user guide, but I cannot find any clear info around
> > how
> > >>>> to program the device. The closes is the text on the web page that
> > >> says:
> > >>>>
> > >>>>
> > >>>>
> > >>>> “Drag-and-Drop Programming:
> > >>>>
> > >>>> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is quick
> and
> > >>> easy.
> > >>>> We've integrated a unique drag-and-drop programmer for compatibility
> > >> with
> > >>>> almost
> > >>>> any USB-connected PC, laptop, or tablet. The MPLAB Xpress Evaluation
> > >>> board
> > >>>> connects
> > >>>> to your PC as a USB Flash drive, so no drivers are needed.
> Programming
> > >> of
> > >>>> the target
> > >>>> device is completed in microseconds, with no waiting. The
> evaluation
> > >>> board
> > >>>> makes it
> > >>>> quick and easy to build a working prototype in a short period of
> > time.”
> > >>>>
> > >>>>
> > >>>>
> > >>>> http://www.microchip.com/promo/mplab-xpress-
> > >> pic16f18446-evaluation-board
> > >>>>
> > >>>>
> > >>>>
> > >>>> OK, right. But how? Where to “drop” the file (an hex file?). In the
> > >> root
> > >>> of
> > >>>> the
> > >>>> emulated device? In some directory? With some special file name?
> > >>>>
> > >>>>
> > >>>>
> > >>>> Does the integrated support in MPLAB X handle this automatically?
> > >>>>
> > >>>>
> > >>>>
> > >>>> Have any one got their board running successfully yet?
> > >>>>
> > >>>>
> > >>>>
> > >>>> Jan-Erik.
> > >>>>
> > >>>
> > >>> --
> > >>> John Ferrell W8CCW
> > >>> Julian NC 27283
> > >>> It is better to walk alone,
> > >>> than with a crowd going the wrong direction.
> > >>> --Diane Grant
> > >>>
> > >>> --
> > >>> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > >>> View/change your membership options at
> > >>> http://mailman.mit.edu/mailman/listinfo/piclist
> > >>>
> > >> --
> > >> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > >> View/change your membership options at
> > >> http://mailman.mit.edu/mailman/listinfo/piclist
> > >>
> > > --
> > > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > > View/change your membership options at
> > > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options
AB Pearce - UKRI STFC
2018-07-08 13:19:14 UTC
Permalink
Once the file has been flashed, does it then delete the file?


-----Original Message-----
From: piclist-***@mit.edu <piclist-***@mit.edu> On Behalf Of Chris Roper
Sent: 08 July 2018 13:40
To: Microcontroller discussion list - Public. <***@mit.edu>
Subject: Re: Xpress PIC16F18446 Evaluation Board

As long as it shows up on your PC as a virtual Disk then yes.
You just generate the hex file in MPLab then use the file system to copy it to the virtual disk which Flashes the part.


On 8 July 2018 at 14:13, Michael Johnston <***@gmail.com>
wrote:

> Hi Chris, I appreciate that, as the information that I have received
> is very vaque. The next question is can you write a program on mplabx
> on my computer and program it from there to or does only work online?
> Thank You Michael
>
> Sent from my iPhone
>
> > On Jul 8, 2018, at 12:56 AM, Chris Roper <***@gmail.com> wrote:
> >
> > No.
> > The debug portion of the Programmer only works with Atmel Studio and
> > has not been activated on the demo boards.
> >
> >
> > On 8 July 2018 at 01:49, Michael Johnston
> > <***@gmail.com>
> > wrote:
> >
> >> So I haven't really looked at this yet but my question is can you
> >> debug
> a
> >> program on it like you where using the PICKIT3 or the ICD3 thanks
> >> Michael Johnston
> >>
> >> On Sat, Jul 7, 2018 at 6:29 PM John Ferrell
> >> <***@triad.rr.com>
> >> wrote:
> >>
> >>> I get more lazy every day. At this time I will check YouTube
> >>> occasionally for
> >>>
> >>>
> >>> "16f18446"
> >>>
> >>>
> >>>> On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> >>>> Hi.
> >>>>
> >>>>
> >>>>
> >>>> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> >>>> I have read the user guide, but I cannot find any clear info
> >>>> around
> how
> >>>> to program the device. The closes is the text on the web page
> >>>> that
> >> says:
> >>>>
> >>>>
> >>>>
> >>>> “Drag-and-Drop Programming:
> >>>>
> >>>> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is
> >>>> quick and
> >>> easy.
> >>>> We've integrated a unique drag-and-drop programmer for
> >>>> compatibility
> >> with
> >>>> almost
> >>>> any USB-connected PC, laptop, or tablet. The MPLAB Xpress
> >>>> Evaluation
> >>> board
> >>>> connects
> >>>> to your PC as a USB Flash drive, so no drivers are needed.
> >>>> Programming
> >> of
> >>>> the target
> >>>> device is completed in microseconds, with no waiting. The
> >>>> evaluation
> >>> board
> >>>> makes it
> >>>> quick and easy to build a working prototype in a short period of
> time.”
> >>>>
> >>>>
> >>>>
> >>>> http://www.microchip.com/promo/mplab-xpress-
> >> pic16f18446-evaluation-board
> >>>>
> >>>>
> >>>>
> >>>> OK, right. But how? Where to “drop” the file (an hex file?). In
> >>>> the
> >> root
> >>> of
> >>>> the
> >>>> emulated device? In some directory? With some special file name?
> >>>>
> >>>>
> >>>>
> >>>> Does the integrated support in MPLAB X handle this automatically?
> >>>>
> >>>>
> >>>>
> >>>> Have any one got their board running successfully yet?
> >>>>
> >>>>
> >>>>
> >>>> Jan-Erik.
> >>>>
> >>>
> >>> --
> >>> John Ferrell W8CCW
> >>> Julian NC 27283
> >>> It is better to walk alone,
> >>> than with a crowd going the wrong direction.
> >>> --Diane Grant
> >>>
> >>> --
> >>> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> >>> View/change your membership options at
> >>> http://mailman.mit.edu/mailman/listinfo/piclist
> >>>
> >> --
> >> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> >> View/change your membership options at
> >> http://mailman.mit.edu/mailman/listinfo/piclist
> >>
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.
Michael Johnston
2018-07-08 13:26:00 UTC
Permalink
so if you plug this into a bread board do you have to provide a 3.3 voltage
source to power it or can it power such things as LEDS and other devices on
the board?

On Sun, Jul 8, 2018 at 8:19 AM AB Pearce - UKRI STFC <
***@stfc.ac.uk> wrote:

> Once the file has been flashed, does it then delete the file?
>
>
> -----Original Message-----
> From: piclist-***@mit.edu <piclist-***@mit.edu> On Behalf Of
> Chris Roper
> Sent: 08 July 2018 13:40
> To: Microcontroller discussion list - Public. <***@mit.edu>
> Subject: Re: Xpress PIC16F18446 Evaluation Board
>
> As long as it shows up on your PC as a virtual Disk then yes.
> You just generate the hex file in MPLab then use the file system to copy
> it to the virtual disk which Flashes the part.
>
>
> On 8 July 2018 at 14:13, Michael Johnston <***@gmail.com>
> wrote:
>
> > Hi Chris, I appreciate that, as the information that I have received
> > is very vaque. The next question is can you write a program on mplabx
> > on my computer and program it from there to or does only work online?
> > Thank You Michael
> >
> > Sent from my iPhone
> >
> > > On Jul 8, 2018, at 12:56 AM, Chris Roper <***@gmail.com> wrote:
> > >
> > > No.
> > > The debug portion of the Programmer only works with Atmel Studio and
> > > has not been activated on the demo boards.
> > >
> > >
> > > On 8 July 2018 at 01:49, Michael Johnston
> > > <***@gmail.com>
> > > wrote:
> > >
> > >> So I haven't really looked at this yet but my question is can you
> > >> debug
> > a
> > >> program on it like you where using the PICKIT3 or the ICD3 thanks
> > >> Michael Johnston
> > >>
> > >> On Sat, Jul 7, 2018 at 6:29 PM John Ferrell
> > >> <***@triad.rr.com>
> > >> wrote:
> > >>
> > >>> I get more lazy every day. At this time I will check YouTube
> > >>> occasionally for
> > >>>
> > >>>
> > >>> "16f18446"
> > >>>
> > >>>
> > >>>> On 7/7/2018 8:42 AM, Jan-Erik Söderholm wrote:
> > >>>> Hi.
> > >>>>
> > >>>>
> > >>>>
> > >>>> Received the “Xpress PIC16F18446 Evaluation Board” board this week.
> > >>>> I have read the user guide, but I cannot find any clear info
> > >>>> around
> > how
> > >>>> to program the device. The closes is the text on the web page
> > >>>> that
> > >> says:
> > >>>>
> > >>>>
> > >>>>
> > >>>> “Drag-and-Drop Programming:
> > >>>>
> > >>>> Programming the MPLAB Xpress PIC16F18446 Evaluation Board is
> > >>>> quick and
> > >>> easy.
> > >>>> We've integrated a unique drag-and-drop programmer for
> > >>>> compatibility
> > >> with
> > >>>> almost
> > >>>> any USB-connected PC, laptop, or tablet. The MPLAB Xpress
> > >>>> Evaluation
> > >>> board
> > >>>> connects
> > >>>> to your PC as a USB Flash drive, so no drivers are needed.
> > >>>> Programming
> > >> of
> > >>>> the target
> > >>>> device is completed in microseconds, with no waiting. The
> > >>>> evaluation
> > >>> board
> > >>>> makes it
> > >>>> quick and easy to build a working prototype in a short period of
> > time.”
> > >>>>
> > >>>>
> > >>>>
> > >>>> http://www.microchip.com/promo/mplab-xpress-
> > >> pic16f18446-evaluation-board
> > >>>>
> > >>>>
> > >>>>
> > >>>> OK, right. But how? Where to “drop” the file (an hex file?). In
> > >>>> the
> > >> root
> > >>> of
> > >>>> the
> > >>>> emulated device? In some directory? With some special file name?
> > >>>>
> > >>>>
> > >>>>
> > >>>> Does the integrated support in MPLAB X handle this automatically?
> > >>>>
> > >>>>
> > >>>>
> > >>>> Have any one got their board running successfully yet?
> > >>>>
> > >>>>
> > >>>>
> > >>>> Jan-Erik.
> > >>>>
> > >>>
> > >>> --
> > >>> John Ferrell W8CCW
> > >>> Julian NC 27283
> > >>> It is better to walk alone,
> > >>> than with a crowd going the wrong direction.
> > >>> --Diane Grant
> > >>>
> > >>> --
> > >>> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > >>> View/change your membership options at
> > >>> http://mailman.mit.edu/mailman/listinfo/piclist
> > >>>
> > >> --
> > >> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > >> View/change your membership options at
> > >> http://mailman.mit.edu/mailman/listinfo/piclist
> > >>
> > > --
> > > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > > View/change your membership options at
> > > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.
Chris Roper
2018-07-08 13:48:43 UTC
Permalink
On 8 July 2018 at 15:26, Michael Johnston <***@gmail.com>
wrote:

> so if you plug this into a bread board do you have to provide a 3.3 voltage
> source to power it or can it power such things as LEDS and other devices on
> the board?


It is powered Via the USB connection and has plenty of Power to drive LED's
etc.
No external supply needed.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-08 14:51:44 UTC
Permalink
So, if you plug the Xpress board into a breadboard, you can power any other

-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För Chris Roper
Skickat: den 8 juli 2018 15:49
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

On 8 July 2018 at 15:26, Michael Johnston <***@gmail.com>
wrote:

> so if you plug this into a bread board do you have to provide a 3.3
> voltage source to power it or can it power such things as LEDS and
> other devices on the board?


It is powered Via the USB connection and has plenty of Power to drive LED's
etc.
No external supply needed.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change
your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-08 14:56:31 UTC
Permalink
Sorry for the uncomplete post just sent...

So, if you plug the Xpress board into a breadboard, you can power any other
circuit from the onboard MIC5353, as long as it (the MIC5353) can supply
the power. The VCC_TARGET (screen marked VTG) on the breadboard row
of pins, is the same as the VCC to the PIC16F18446.

Right then, time to try to do something with the yellow LED (D200) then... 😊

Jan-Erik.

-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För Chris Roper
Skickat: den 8 juli 2018 15:49
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

On 8 July 2018 at 15:26, Michael Johnston <***@gmail.com>
wrote:

> so if you plug this into a bread board do you have to provide a 3.3
> voltage source to power it or can it power such things as LEDS and
> other devices on the board?


It is powered Via the USB connection and has plenty of Power to drive LED's etc.
No external supply needed.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.m
Chris Roper
2018-07-08 14:59:16 UTC
Permalink
3.1 Power Supply
The kit is powered through the USB port as shown in the diagram below. The
kit contains two regulators
for generating 3.3V for the debugger and an adjustable regulator for the
target. The target regulator is set
to generate 3.3V on MPLAB® Xpress PIC16F18446.
If an external voltage is required, the power supply and the target must be
separated. This can be done
by cutting the strap on the bottom side of the kit marked VREG as shown in
the figure below. Cutting the
strap will not separate the target supply from the level shifter, allowing
programming of the PIC16F18446
with an external voltage.
WARNING Supplying external power to the board while the USB cable is
plugged in, without cutting the
VREG strap, can permanently damage the toolkit and the USB port of the PC.

http://ww1.microchip.com/downloads/en/DeviceDoc/MPLAB-Xpress-PIC16F18446-Evaluation-Board.pdf
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailma
Chris Roper
2018-07-08 13:40:22 UTC
Permalink
On 8 July 2018 at 15:19, AB Pearce - UKRI STFC <***@stfc.ac.uk>
wrote:

> Once the file has been flashed, does it then delete the file?


Yes, It is not an actual Drive, as the file is written by the file system
the PIC is being Flashed, no actual file is created.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-08 21:54:10 UTC
Permalink
So, I copied a hex file (created with some demo that really needs
the "Sensor Board" extension) and when copied (drag-n-drop on
my Win10 laptop), the file shows as a file on the CURIOSITY (F:)
device. Even after refresh with F5 or changing device and back.

When the USB was disconnected and connected again, it was gone.
Does this mean that it actually was flashed? At power-up?

Have to test with something that uses the yellow led, I guess...

Jan-Erik.



-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För Chris Roper
Skickat: den 8 juli 2018 15:40
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

On 8 July 2018 at 15:19, AB Pearce - UKRI STFC <***@stfc.ac.uk>
wrote:

> Once the file has been flashed, does it then delete the file?


Yes, It is not an actual Drive, as the file is written by the file system
the PIC is being Flashed, no actual file is created.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change
your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Vicent Colomar Prats
2018-07-09 13:58:03 UTC
Permalink
Hello Jan,

I suspect this uses same way of programming as Mbed. It has an included
bootloader that acts as a kind of a pendrive. You throw files into it (drag
and drop) just to program it (in root). No matter what the name the file is
(except it has to be a valid .hex), When you drop a file, it detects and
reflashes itself. Sometimes you see the file and sometimes you do not
(don't know if it is windows cache related or not) but don't care about it.
When you are used to it, it is a very convenient way of programming.
In this way, you can program easy and fast, but debbuging is another
question. You would debug using a serial port and "printf" or similars. To
debug in the classic way (using the hardware programmer in Mplabx) you
should dig for more info, I can not help at the momment.


Missatge de Jan-Erik Söderholm <jan-***@telia.com> del dia dg.,
8 de jul. 2018 a les 23:54:

> So, I copied a hex file (created with some demo that really needs
> the "Sensor Board" extension) and when copied (drag-n-drop on
> my Win10 laptop), the file shows as a file on the CURIOSITY (F:)
> device. Even after refresh with F5 or changing device and back.
>
> When the USB was disconnected and connected again, it was gone.
> Does this mean that it actually was flashed? At power-up?
>
> Have to test with something that uses the yellow led, I guess...
>
> Jan-Erik.
>
>
>
> -----Ursprungligt meddelande-----
> Från: piclist-***@mit.edu <piclist-***@mit.edu> För Chris Roper
> Skickat: den 8 juli 2018 15:40
> Till: Microcontroller discussion list - Public. <***@mit.edu>
> Ämne: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board
>
> On 8 July 2018 at 15:19, AB Pearce - UKRI STFC <***@stfc.ac.uk>
> wrote:
>
> > Once the file has been flashed, does it then delete the file?
>
>
> Yes, It is not an actual Drive, as the file is written by the file system
> the PIC is being Flashed, no actual file is created.
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change
> your membership options at http://mailman.mit.edu/mailman/listinfo/piclist
>
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://
AB Pearce - UKRI STFC
2018-07-09 14:44:46 UTC
Permalink
> To debug in the classic way (using the hardware programmer in Mplabx) you should dig for more info, I can not help at the momment.

The information in the Sensor Board User Guide that goes with the 18446 X-Press board implies that you can do conventional debug with MPLAB-X. Presumably this needs to be the latest version, but they do have other X-press boards that are useable in the same way.




--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Mark E. Skeels
2018-07-09 15:12:23 UTC
Permalink
All,

I am using this Eval board. I soldered a straight pin connector to the
pads on the bottom of the pcb and after updating my Picket 3 firmware I
have been able to take the original project (MPLab light?) and export it
for regular MPLab.

Everything works fine.

Mark


On 7/9/2018 9:44 AM, AB Pearce - UKRI STFC wrote:
>> To debug in the classic way (using the hardware programmer in Mplabx) you should dig for more info, I can not help at the momment.
> The information in the Sensor Board User Guide that goes with the 18446 X-Press board implies that you can do conventional debug with MPLAB-X. Presumably this needs to be the latest version, but they do have other X-press boards that are useable in the same way.
>
>
>
>

--
Skeels Technical Services
9714 Norman Ave.
Machesney Park, IL 61115
call or text me at 815-979-6705

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Vicent Colomar Prats
2018-07-13 10:47:44 UTC
Permalink
I found this small comparative with an Arduino:
https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/


Missatge de Mark E. Skeels <***@gmail.com> del dia dl., 9 de jul. 2018
a les 17:13:

> All,
>
> I am using this Eval board. I soldered a straight pin connector to the
> pads on the bottom of the pcb and after updating my Picket 3 firmware I
> have been able to take the original project (MPLab light?) and export it
> for regular MPLab.
>
> Everything works fine.
>
> Mark
>
>
> On 7/9/2018 9:44 AM, AB Pearce - UKRI STFC wrote:
> >> To debug in the classic way (using the hardware programmer in Mplabx)
> you should dig for more info, I can not help at the momment.
> > The information in the Sensor Board User Guide that goes with the 18446
> X-Press board implies that you can do conventional debug with MPLAB-X.
> Presumably this needs to be the latest version, but they do have other
> X-press boards that are useable in the same way.
> >
> >
> >
> >
>
> --
> Skeels Technical Services
> 9714 Norman Ave.
> Machesney Park, IL 61115
> call or text me at 815-979-6705
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Clint Jay
2018-07-13 11:35:57 UTC
Permalink
Thta's rather favourable...

On 13 July 2018 at 11:47, Vicent Colomar Prats <***@gmail.com>
wrote:

> I found this small comparative with an Arduino:
> https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-
> uno-overview-speed-comparison/
>
>
> Missatge de Mark E. Skeels <***@gmail.com> del dia dl., 9 de jul.
> 2018
> a les 17:13:
>
> > All,
> >
> > I am using this Eval board. I soldered a straight pin connector to the
> > pads on the bottom of the pcb and after updating my Picket 3 firmware I
> > have been able to take the original project (MPLab light?) and export it
> > for regular MPLab.
> >
> > Everything works fine.
> >
> > Mark
> >
> >
> > On 7/9/2018 9:44 AM, AB Pearce - UKRI STFC wrote:
> > >> To debug in the classic way (using the hardware programmer in Mplabx)
> > you should dig for more info, I can not help at the momment.
> > > The information in the Sensor Board User Guide that goes with the 18446
> > X-Press board implies that you can do conventional debug with MPLAB-X.
> > Presumably this needs to be the latest version, but they do have other
> > X-press boards that are useable in the same way.
> > >
> > >
> > >
> > >
> >
> > --
> > Skeels Technical Services
> > 9714 Norman Ave.
> > Machesney Park, IL 61115
> > call or text me at 815-979-6705
> >
> > --
> > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> > View/change your membership options at
> > http://mailman.mit.edu/mailman/listinfo/piclist
> >
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>



--
Clint. M0UAW IO83

*No trees were harmed in the sending of this mail. However, a large number
of electrons were greatly inconvenienced.*
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
mike brown
2018-07-13 15:39:00 UTC
Permalink
Hmm That pin toggling test isn't exactly fair. The digitalWrite()
function has a fair amount of overhead to accomplish its task on all the
different platforms. Error checking, remapping the logical pin to the
chip's physical IO pin (PORTx and bit position), disabling any PWM that
might be on, saving and restoring SREG, disabling interrupts... I think I
made my point. ;)

The pinToggle() function (macro) appears to be fully optimized for one
specific platform. Using direct port manipulation, the Arduino running at
16MHz can toggle an output pin at 4MHz.


-----Original Message-----
From: piclist-***@mit.edu [mailto:piclist-***@mit.edu] On Behalf
Of Vicent Colomar Prats
Sent: Friday, July 13, 2018 5:48 AM
To: Microcontroller discussion list - Public.
Subject: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

I found this small comparative with an Arduino:
https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-
comparison/


Missatge de Mark E. Skeels <***@gmail.com> del dia dl., 9 de jul.
2018
a les 17:13:

> All,
>
> I am using this Eval board. I soldered a straight pin connector to the
> pads on the bottom of the pcb and after updating my Picket 3 firmware I
> have been able to take the original project (MPLab light?) and export it
> for regular MPLab.
>
> Everything works fine.
>
> Mark
>
>
> On 7/9/2018 9:44 AM, AB Pearce - UKRI STFC wrote:
> >> To debug in the classic way (using the hardware programmer in Mplabx)
> you should dig for more info, I can not help at the momment.
> > The information in the Sensor Board User Guide that goes with the
18446
> X-Press board implies that you can do conventional debug with MPLAB-X.
> Presumably this needs to be the latest version, but they do have other
> X-press boards that are useable in the same way.
> >
> >
> >
> >
>
> --
> Skeels Technical Services
> 9714 Norman Ave.
> Machesney Park, IL 61115
> call or text me at 815-979-6705
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Van Horn, David
2018-07-13 15:48:57 UTC
Permalink
The AVR is faster than that..

Sbi pinX,# ; Toggle pin
Sbi pinX,# ; Toggle pin
Sbi pinX,# ; Toggle pin
Sbi pinX,# ; Toggle pin
...

https://www.microchip.com/webdoc/avrassembler/avrassembler.wb_SBI.html

two crystal clocks per instruction, so 8 MHz toggle.


-----Original Message-----
From: piclist-***@mit.edu <piclist-***@mit.edu> On Behalf Of mike brown
Sent: Friday, July 13, 2018 9:39 AM
To: Microcontroller discussion list - Public. <***@mit.edu>
Subject: RE: [PIC] RE: Xpress PIC16F18446 Evaluation Board

Hmm That pin toggling test isn't exactly fair. The digitalWrite() function has a fair amount of overhead to accomplish its task on all the
different platforms. Error checking, remapping the logical pin to the
chip's physical IO pin (PORTx and bit position), disabling any PWM that might be on, saving and restoring SREG, disabling interrupts... I think I made my point. ;)

The pinToggle() function (macro) appears to be fully optimized for one specific platform. Using direct port manipulation, the Arduino running at 16MHz can toggle an output pin at 4MHz.


-----Original Message-----
From: piclist-***@mit.edu [mailto:piclist-***@mit.edu] On Behalf Of Vicent Colomar Prats
Sent: Friday, July 13, 2018 5:48 AM
To: Microcontroller discussion list - Public.
Subject: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

I found this small comparative with an Arduino:
https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-
comparison/


Missatge de Mark E. Skeels <***@gmail.com> del dia dl., 9 de jul.
2018
a les 17:13:

> All,
>
> I am using this Eval board. I soldered a straight pin connector to the
> pads on the bottom of the pcb and after updating my Picket 3 firmware
> I have been able to take the original project (MPLab light?) and
> export it for regular MPLab.
>
> Everything works fine.
>
> Mark
>
>
> On 7/9/2018 9:44 AM, AB Pearce - UKRI STFC wrote:
> >> To debug in the classic way (using the hardware programmer in
> >> Mplabx)
> you should dig for more info, I can not help at the momment.
> > The information in the Sensor Board User Guide that goes with the
18446
> X-Press board implies that you can do conventional debug with MPLAB-X.
> Presumably this needs to be the latest version, but they do have other
> X-press boards that are useable in the same way.
> >
> >
> >
> >
>
> --
> Skeels Technical Services
> 9714 Norman Ave.
> Machesney Park, IL 61115
> call or text me at 815-979-6705
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
mike brown
2018-07-13 16:28:55 UTC
Permalink
>The AVR is faster than that..

> Sbi pinX,# ; Toggle pin
> Sbi pinX,# ; Toggle pin
> Sbi pinX,# ; Toggle pin
> Sbi pinX,# ; Toggle pin
> ...

Don't you need some CBI instructions in there? ;)

[OT]

PIC chips have their place in the world, but once I moved to the Arduino
(Mega328), I haven't really missed them. I can't think of an uglier
assembly language except maybe the RCA 1802. The Atmel instruction set is
soooo much easier. Being able to use a decent/free C compiler is even
better. ARM assembly is cool too.

Wow, I was just looking at the archive and saw a post I made in early
2001. Where have the years gone? :( I wish I could remember all the
stuff I "learned" from you guys.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Van Horn, David
2018-07-13 17:21:25 UTC
Permalink
Nope.
You would if you were accessing the pin through the PORT register, which is what you normally use for output.
The PIN register is usually used for input, which avoids the problem that led to the infamous PIC "Read-Modify-Write" Problem.
I can set a pin with a heavy capacitive load high with the PORT register, then read PIN and get the pin state low, then high as the cap charges.

All that aside, writing a 1 to the pin toggles the output pin.

-----Original Message-----
From: piclist-***@mit.edu <piclist-***@mit.edu> On Behalf Of mike brown
Sent: Friday, July 13, 2018 10:29 AM
To: Microcontroller discussion list - Public. <***@mit.edu>
Subject: [PIC] RE: Xpress PIC16F18446 Evaluation Board

>The AVR is faster than that..

> Sbi pinX,# ; Toggle pin
> Sbi pinX,# ; Toggle pin
> Sbi pinX,# ; Toggle pin
> Sbi pinX,# ; Toggle pin
> ...

Don't you need some CBI instructions in there? ;)

[OT]

PIC chips have their place in the world, but once I moved to the Arduino (Mega328), I haven't really missed them. I can't think of an uglier assembly language except maybe the RCA 1802. The Atmel instruction set is soooo much easier. Being able to use a decent/free C compiler is even better. ARM assembly is cool too.

Wow, I was just looking at the archive and saw a post I made in early 2001. Where have the years gone? :( I wish I could remember all the stuff I "learned" from you guys.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-13 23:17:59 UTC
Permalink
OK, no reason to start a flame ware here, but... 😊

> The Atmel instruction set is soooo much easier.

It is not clear what you think is easier, but I have some issues to
consider a 120+ instruction ISA "easier" then a 40 instruction ISA.

And I consider having the same instructions to access *everything* in
the PIC architecture "easier" then having to deal with different instructions
for "registers" (and sometimes different if it is the lower or higher 16 regs),
"RAM" and the "I/O address space".

In a PIC you can directly do a "set/clear bit" instruction against *all*
available memory (including all peripheral registers and I/O ports).
Everything you can possible access is in the same flat (but banked)
memory address map.

The main reason for the 120+ instructions in the AVR is that it has
an architecture that is divided between different types of storage.
And each type has to some degree their own instructions.

On an AVR you have SBR to set a bit (does it really toggle the bit ??)
in a register, but only register 16-31, not the lower 16 registers.

Or SBI to set a bit in the "lower 32 I/O registers - addresses 0-31".
Note, not in the full 64 I/O regs or in the 160 "extended I/O regs".
So it is a hit-n-miss if you happens to be able to use bit instruction
against a specific peripheral register. If not, you have to copy to a
register, do the bit-fiddling and copy back.

Sometimes it feels like some people are more comfortable coming
from "large" systems where you have "RAM" externally to the CPU
and "registers" where you actually do the work, and that is what
the AVR looks like, but internally.

PIC on the other hand has *one* common way to access things no
matter what it is called. On a PIC with 2 Kbytes, you have (in AVR
terms) 2K "registers" that works like the 16/32 (depending in what
you want to do) "registers" on an AVR.

On a PIC you can do INC/DEC/SBF/CBF/whatever on *any* memory.
The only instructions a large part of the AVR memory (the "RAM")
understands is LOAD/STORE.

Just the fact that it is enough with 40 instructions instead of 120+ is
enough of a proof of a cleaner and "nicer" architecture.




--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.
Scott
2018-07-13 23:38:46 UTC
Permalink
I received my free board a couple weeks ago and was disappointed by the
examples. I posted on the Microchip forums but the people there were not
very helpful.

Microchip has a good handful of examples, but they all require a secondary
board (e.g. sensor board or some other board). And there is no default
"blinky LED" demo. The devboard does nothing when plugged in. Well, it
enumerates the debugger and shows up as a mass storage device, but the
target does nothing. I wanted to jump right in, but ordering a board and
wiring something up is not as appealing as blinking an LED right away.
Maybe in the past week or so more examples have been added.

Programming it is as simple as copying your hex file to the mass storage
device root directory. It's not persistent memory, so if you unplug USB and
plug it back in, your hex file will not be there.

Cheers,
Scott
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-13 23:56:57 UTC
Permalink
Yes, fully agree. They *could* have posted something that was possible
to build directly and download. A simple blink-a-LED for the on-board LED...

I did build one of the examples for the sensor-board, but there is no way
to verify if it actually runs on the PIC...

Anyway, I have been away from the PICs since the PIC16F1xxx arrived
and hey what they have become complex! A good thing, I guess... 😊

Jan-Erik.



-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För Scott
Skickat: den 14 juli 2018 01:39
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

I received my free board a couple weeks ago and was disappointed by the examples. I posted on the Microchip forums but the people there were not very helpful.

Microchip has a good handful of examples, but they all require a secondary board (e.g. sensor board or some other board). And there is no default "blinky LED" demo. The devboard does nothing when plugged in. Well, it enumerates the debugger and shows up as a mass storage device, but the target does nothing. I wanted to jump right in, but ordering a board and wiring something up is not as appealing as blinking an LED right away.
Maybe in the past week or so more examples have been added.

Programming it is as simple as copying your hex file to the mass storage device root directory. It's not persistent memory, so if you unplug USB and plug it back in, your hex file will not be there.

Cheers,
Scott
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.
James Burkart
2018-07-14 01:24:34 UTC
Permalink
Is microchip trying to compete in the Arduino market with this board? Are
they trying to win people over with this?

On Fri, Jul 13, 2018, 5:57 PM Jan-Erik Söderholm <
jan-***@telia.com> wrote:

> Yes, fully agree. They *could* have posted something that was possible
> to build directly and download. A simple blink-a-LED for the on-board
> LED...
>
> I did build one of the examples for the sensor-board, but there is no way
> to verify if it actually runs on the PIC...
>
> Anyway, I have been away from the PICs since the PIC16F1xxx arrived
> and hey what they have become complex! A good thing, I guess... 😊
>
> Jan-Erik.
>
>
>
> -----Ursprungligt meddelande-----
> Från: piclist-***@mit.edu <piclist-***@mit.edu> För Scott
> Skickat: den 14 juli 2018 01:39
> Till: Microcontroller discussion list - Public. <***@mit.edu>
> Ämne: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board
>
> I received my free board a couple weeks ago and was disappointed by the
> examples. I posted on the Microchip forums but the people there were not
> very helpful.
>
> Microchip has a good handful of examples, but they all require a secondary
> board (e.g. sensor board or some other board). And there is no default
> "blinky LED" demo. The devboard does nothing when plugged in. Well, it
> enumerates the debugger and shows up as a mass storage device, but the
> target does nothing. I wanted to jump right in, but ordering a board and
> wiring something up is not as appealing as blinking an LED right away.
> Maybe in the past week or so more examples have been added.
>
> Programming it is as simple as copying your hex file to the mass storage
> device root directory. It's not persistent memory, so if you unplug USB and
> plug it back in, your hex file will not be there.
>
> Cheers,
> Scott
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/
Bob Blick
2018-07-14 02:14:20 UTC
Permalink
"Let's buy the heart of Arduino, and then kill it"

"Here's our alternative. You think you hate it now, but wait 'til you try to make it blink an LED, it won't"

Groupthink.

Seems legit.

Big bonuses to top management later this year?

BB

________________________________________
From: piclist-***@mit.edu <piclist-***@mit.edu> on behalf of James Burkart
Sent: Friday, July 13, 2018 6:24 PM
To: Microcontroller discussion list - Public.
Subject: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

Is microchip trying to compete in the Arduino market with this board? Are
they trying to win people over with this?

On Fri, Jul 13, 2018, 5:57 PM Jan-Erik Söderholm <
jan-***@telia.com> wrote:

> Yes, fully agree. They *could* have posted something that was possible
> to build directly and download. A simple blink-a-LED for the on-board
> LED...
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Allen Mulvey
2018-07-14 03:04:59 UTC
Permalink
I have to admit I have been using mostly ESP8266 devices
lately and I don’t have one of these boards to actually
test. However, could it be that they thought they were
sending these boards to seasoned professionals not high
school students and did not expect that target group to be
interested in a simple blink an LED demo? I personally have
never found such simple demos to be of any value. I have
made hex files with my MikroC compiler and dropped them into
a PICKit3. This sounds a lot easier than that.

Allen

-----Original Message-----
From: piclist-***@mit.edu
[mailto:piclist-***@mit.edu] On Behalf Of Bob Blick
Sent: Friday, July 13, 2018 10:14 PM
To: Microcontroller discussion list - Public.
Subject: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

"Let's buy the heart of Arduino, and then kill it"

"Here's our alternative. You think you hate it now, but wait
'til you try to make it blink an LED, it won't"

Groupthink.

Seems legit.

Big bonuses to top management later this year?

BB

________________________________________
From: piclist-***@mit.edu <piclist-***@mit.edu> on
behalf of James Burkart
Sent: Friday, July 13, 2018 6:24 PM
To: Microcontroller discussion list - Public.
Subject: Re: [PIC] RE: Xpress PIC16F18446 Evaluation Board

Is microchip trying to compete in the Arduino market with
this board? Are
they trying to win people over with this?

On Fri, Jul 13, 2018, 5:57 PM Jan-Erik Söderholm <
jan-***@telia.com> wrote:

> Yes, fully agree. They *could* have posted something that
was possible
> to build directly and download. A simple blink-a-LED for
the on-board
> LED...
>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list
archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
AB Pearce - UKRI STFC
2018-07-14 18:11:52 UTC
Permalink
> I couldn't find this board for sale on the Microchip/Direct websites - there's a page for it
> (http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-board)
> but no buy link.
>
> It's also not listed on the Xpress Boards page at https://www.microchip.com/mplab/mplab-xpress/mplab-xpress-evaluation-boards.

It was available for a 'limited' time and I'm sure there was still a button on that page you linked above to pick up a free one within the last week. It may be worth registering on the other xpress board page you mentioned to see if you get offered one.

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-14 23:16:00 UTC
Permalink
If you go into the "samples" pages and search for "PIC16F18446" you will
find,
in the list of different packages and so on, an item called
"PIC16F18446-XPRESS".
That is this specific card.

Jan-Erik.


-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För AB Pearce - UKRI
STFC
Skickat: den 14 juli 2018 20:12
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: RE: [PIC] RE: Xpress PIC16F18446 Evaluation Board

> I couldn't find this board for sale on the Microchip/Direct websites -
> there's a page for it
> (http://www.microchip.com/promo/mplab-xpress-pic16f18446-evaluation-bo
> ard)
> but no buy link.
>
> It's also not listed on the Xpress Boards page at
https://www.microchip.com/mplab/mplab-xpress/mplab-xpress-evaluation-boards.

It was available for a 'limited' time and I'm sure there was still a button
on that page you linked above to pick up a free one within the last week. It
may be worth registering on the other xpress board page you mentioned to see
if you get offered one.

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change
your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Xiaofan Chen
2018-07-16 01:32:49 UTC
Permalink
On Sun, Jul 15, 2018 at 7:16 AM, Jan-Erik Söderholm
<jan-***@telia.com> wrote:
> If you go into the "samples" pages and search for "PIC16F18446"
> you will find,
> in the list of different packages and so on, an item called
> "PIC16F18446-XPRESS".
> That is this specific card.

Nice. Thanks for the tip and I just placed an order. I have not
touched any PIC12/PIC16
for quite some years (only a bit of PIC18F87J50 USB PIM, as the test
tools for my
libusb related testing).


--
Xiaofan

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit
Xiaofan Chen
2018-07-16 01:38:34 UTC
Permalink
On Sat, Jul 14, 2018 at 9:24 AM, James Burkart <***@burkartstudios.com> wrote:
> Is microchip trying to compete in the Arduino market with this board? Are
> they trying to win people over with this?
>

I do not think so. Arduino is established in the hobbyist market. Then you have
the embedded Linux/Android oriented board like Raspberry Pi.

It is just a cheap development tools to get the developers in, just like the
STM32/STM8 Discovery and other cheap kits from major MCU vendors.
Often engineers get free kits.



--
Xiaofan
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
smplx
2018-07-15 02:11:11 UTC
Permalink
On Sat, 14 Jul 2018, Jan-Erik Söderholm wrote:

> OK, no reason to start a flame ware here, but... 😊
>
>> The Atmel instruction set is soooo much easier.
>
> It is not clear what you think is easier, but I have some issues to
> consider a 120+ instruction ISA "easier" then a 40 instruction ISA.
>
> And I consider having the same instructions to access *everything* in
> the PIC architecture "easier" then having to deal with different instructions
> for "registers" (and sometimes different if it is the lower or higher 16 regs),
> "RAM" and the "I/O address space".
>
> In a PIC you can directly do a "set/clear bit" instruction against *all*
> available memory (including all peripheral registers and I/O ports).
> Everything you can possible access is in the same flat (but banked)
> memory address map.
>
> The main reason for the 120+ instructions in the AVR is that it has
> an architecture that is divided between different types of storage.
> And each type has to some degree their own instructions.
>
> On an AVR you have SBR to set a bit (does it really toggle the bit ??)
> in a register, but only register 16-31, not the lower 16 registers.
>
> Or SBI to set a bit in the "lower 32 I/O registers - addresses 0-31".
> Note, not in the full 64 I/O regs or in the 160 "extended I/O regs".
> So it is a hit-n-miss if you happens to be able to use bit instruction
> against a specific peripheral register. If not, you have to copy to a
> register, do the bit-fiddling and copy back.

I think the problem here is not that "Atmel has 120+ instruction ISA" but
that the assembler is dumb and does not generate different opcodes
depending on the use of the instruction.

>
> Sometimes it feels like some people are more comfortable coming
> from "large" systems where you have "RAM" externally to the CPU
> and "registers" where you actually do the work, and that is what
> the AVR looks like, but internally.
>
> PIC on the other hand has *one* common way to access things no
> matter what it is called. On a PIC with 2 Kbytes, you have (in AVR
> terms) 2K "registers" that works like the 16/32 (depending in what
> you want to do) "registers" on an AVR.

Yes and some people (I include myself here) feel that an MCU that claims
to have 2K registers when it is clearly just internal RAM is just a
marketing gimick. Come on be honest how many of these PIC registers can
normally be used as source and destination in one instruction (that is
without going through W). I mean could you for example add R27 to R143.
Yes I know about movff but that's a special case.

>
> On a PIC you can do INC/DEC/SBF/CBF/whatever on *any* memory.

"memory"? Oops... Are you seeing these registers as RAM :-)

> The only instructions a large part of the AVR memory (the "RAM")
> understands is LOAD/STORE.
>
> Just the fact that it is enough with 40 instructions instead of 120+ is
> enough of a proof of a cleaner and "nicer" architecture.

Sorry Jan but this really is not proof. Consider the following Z80 and
8080 instructions

e.g.
8080 Z80
==== ===
LDA mem LD A,(mem)
STA mem LD (mem),A
MOV A,B LD A,B
MVI A,123 LD A,123
MVI M,123 LD (HL),123
LHLD mem LD HL,(mem)
SHLD mem LD (mem),HL
MOV A,M LD A,(HL)
MOV M,A LD (HL),A
LDAX B LD A,(BC)
STAX B LD (BC),A
LXI B,123 LD (BC),123

ADD B ADD A,B
ADI 123 ADD A,123
ADD M ADD A,(HL)

DAD B ADD HL,BC
DAD D ADD HL,DE

INR A INC A
INR M INC (HL)

INX B INC BC
INX D INC DE

In the above example there are 14 distinct 8080 nmemonics and 3 distinct
Z80 nmemonics and the examples given generate the exact same binary.

The point I am trying to make is that the Z80 code looks a great deal more
consistant than the 8080 code even though there are huge holes in it
e.g. "LD (HL),(BC)" is illegal and does not generate any code.

So turning this on it's head, I am sure a better Atmel assembler could
easily be used to greatly reduce the number of visible opcodes and make
the MCU feel nicer :-)

Friendly Regards
Sergio Masci
Jan-Erik Söderholm
2018-07-15 09:28:41 UTC
Permalink
OK.

The basic issue as I see it with AVR is that the addresses are
split between "registers", "RAM", "I/O-space". And the use of
these spaces is not even consistent within each group. You have
-lower 16 registers
-high 16 registers
-low 32 I/O registers
-high 32 I/O registers
-160 extended I/O registers
-RAM (rest of memory, if available)
All these are different in regard to what instructions/operations that
works in each area.

I think there was some AVR model where there was multiple USART,
one in the old I/O-register area and one in the "extended I/O registers".
The old was setup using the usual instructions, and the new with load/store.

And on the PIC, of course, you always use the same instructions and same
operations no matter where in the available memory you are working.

> I mean could you for example add [two values].

On the PIC it is always done in the same way.
On the AVR it depends on where these values are stored.



-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För smplx
Skickat: den 15 juli 2018 04:11
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: SV: [PIC] RE: Xpress PIC16F18446 Evaluation Board



On Sat, 14 Jul 2018, Jan-Erik Söderholm wrote:

> OK, no reason to start a flame ware here, but... 😊
>
>> The Atmel instruction set is soooo much easier.
>
> It is not clear what you think is easier, but I have some issues to
> consider a 120+ instruction ISA "easier" then a 40 instruction ISA.
>
> And I consider having the same instructions to access *everything* in
> the PIC architecture "easier" then having to deal with different
> instructions for "registers" (and sometimes different if it is the
> lower or higher 16 regs), "RAM" and the "I/O address space".
>
> In a PIC you can directly do a "set/clear bit" instruction against
> *all* available memory (including all peripheral registers and I/O ports).
> Everything you can possible access is in the same flat (but banked)
> memory address map.
>
> The main reason for the 120+ instructions in the AVR is that it has an
> architecture that is divided between different types of storage.
> And each type has to some degree their own instructions.
>
> On an AVR you have SBR to set a bit (does it really toggle the bit ??)
> in a register, but only register 16-31, not the lower 16 registers.
>
> Or SBI to set a bit in the "lower 32 I/O registers - addresses 0-31".
> Note, not in the full 64 I/O regs or in the 160 "extended I/O regs".
> So it is a hit-n-miss if you happens to be able to use bit instruction
> against a specific peripheral register. If not, you have to copy to a
> register, do the bit-fiddling and copy back.

I think the problem here is not that "Atmel has 120+ instruction ISA" but that the assembler is dumb and does not generate different opcodes depending on the use of the instruction.

>
> Sometimes it feels like some people are more comfortable coming
> from "large" systems where you have "RAM" externally to the CPU
> and "registers" where you actually do the work, and that is what
> the AVR looks like, but internally.
>
> PIC on the other hand has *one* common way to access things no
> matter what it is called. On a PIC with 2 Kbytes, you have (in AVR
> terms) 2K "registers" that works like the 16/32 (depending in what
> you want to do) "registers" on an AVR.

Yes and some people (I include myself here) feel that an MCU that claims
to have 2K registers when it is clearly just internal RAM is just a
marketing gimick. Come on be honest how many of these PIC registers can
normally be used as source and destination in one instruction (that is
without going through W). I mean could you for example add R27 to R143.
Yes I know about movff but that's a special case.

>
> On a PIC you can do INC/DEC/SBF/CBF/whatever on *any* memory.

"memory"? Oops... Are you seeing these registers as RAM :-)

> The only instructions a large part of the AVR memory (the "RAM")
> understands is LOAD/STORE.
>
> Just the fact that it is enough with 40 instructions instead of 120+ is
> enough of a proof of a cleaner and "nicer" architecture.

Sorry Jan but this really is not proof. Consider the following Z80 and
8080 instructions

e.g.
8080 Z80
==== ===
LDA mem LD A,(mem)
STA mem LD (mem),A
MOV A,B LD A,B
MVI A,123 LD A,123
MVI M,123 LD (HL),123
LHLD mem LD HL,(mem)
SHLD mem LD (mem),HL
MOV A,M LD A,(HL)
MOV M,A LD (HL),A
LDAX B LD A,(BC)
STAX B LD (BC),A
LXI B,123 LD (BC),123

ADD B ADD A,B
ADI 123 ADD A,123
ADD M ADD A,(HL)

DAD B ADD HL,BC
DAD D ADD HL,DE

INR A INC A
INR M INC (HL)

INX B INC BC
INX D INC DE

In the above example there are 14 distinct 8080 nmemonics and 3 distinct
Z80 nmemonics and the examples given generate the exact same binary.

The point I am trying to make is that the Z80 code looks a great deal more
consistant than the 8080 code even though there are huge holes in it
e.g. "LD (HL),(BC)" is illegal and does not generate any code.

So turning this on it's head, I am sure a better Atmel assembler could
easily be used to greatly reduce the number of visible opcodes and make
the MCU feel nicer :-)

Friendly Regards
Sergio Masci


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mai
s***@agilent.com
2018-07-19 03:59:55 UTC
Permalink
Gee - all of this discussion in [PIC] suddenly makes me feel nostalgic ;o)

Stephen

-----Original Message-----
From: piclist-***@mit.edu [mailto:piclist-***@mit.edu] On Behalf Of Jan-Erik Söderholm
Sent: Sunday, 15 July 2018 7:29 PM
To: 'Microcontroller discussion list - Public.' <***@mit.edu>
Subject: SV: SV: [PIC] RE: Xpress PIC16F18446 Evaluation Board

OK.

The basic issue as I see it with AVR is that the addresses are split between "registers", "RAM", "I/O-space". And the use of these spaces is not even consistent within each group. You have -lower 16 registers -high 16 registers -low 32 I/O registers -high 32 I/O registers
-160 extended I/O registers
-RAM (rest of memory, if available)
All these are different in regard to what instructions/operations that works in each area.

I think there was some AVR model where there was multiple USART, one in the old I/O-register area and one in the "extended I/O registers".
The old was setup using the usual instructions, and the new with load/store.

And on the PIC, of course, you always use the same instructions and same operations no matter where in the available memory you are working.

> I mean could you for example add [two values].

On the PIC it is always done in the same way.
On the AVR it depends on where these values are stored.



-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För smplx
Skickat: den 15 juli 2018 04:11
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: SV: [PIC] RE: Xpress PIC16F18446 Evaluation Board



On Sat, 14 Jul 2018, Jan-Erik Söderholm wrote:

> OK, no reason to start a flame ware here, but... 😊
>
>> The Atmel instruction set is soooo much easier.
>
> It is not clear what you think is easier, but I have some issues to
> consider a 120+ instruction ISA "easier" then a 40 instruction ISA.
>
> And I consider having the same instructions to access *everything* in
> the PIC architecture "easier" then having to deal with different
> instructions for "registers" (and sometimes different if it is the
> lower or higher 16 regs), "RAM" and the "I/O address space".
>
> In a PIC you can directly do a "set/clear bit" instruction against
> *all* available memory (including all peripheral registers and I/O ports).
> Everything you can possible access is in the same flat (but banked)
> memory address map.
>
> The main reason for the 120+ instructions in the AVR is that it has an
> architecture that is divided between different types of storage.
> And each type has to some degree their own instructions.
>
> On an AVR you have SBR to set a bit (does it really toggle the bit ??)
> in a register, but only register 16-31, not the lower 16 registers.
>
> Or SBI to set a bit in the "lower 32 I/O registers - addresses 0-31".
> Note, not in the full 64 I/O regs or in the 160 "extended I/O regs".
> So it is a hit-n-miss if you happens to be able to use bit instruction
> against a specific peripheral register. If not, you have to copy to a
> register, do the bit-fiddling and copy back.

I think the problem here is not that "Atmel has 120+ instruction ISA" but that the assembler is dumb and does not generate different opcodes depending on the use of the instruction.

>
> Sometimes it feels like some people are more comfortable coming from
> "large" systems where you have "RAM" externally to the CPU and
> "registers" where you actually do the work, and that is what the AVR
> looks like, but internally.
>
> PIC on the other hand has *one* common way to access things no matter
> what it is called. On a PIC with 2 Kbytes, you have (in AVR
> terms) 2K "registers" that works like the 16/32 (depending in what you
> want to do) "registers" on an AVR.

Yes and some people (I include myself here) feel that an MCU that claims to have 2K registers when it is clearly just internal RAM is just a marketing gimick. Come on be honest how many of these PIC registers can normally be used as source and destination in one instruction (that is without going through W). I mean could you for example add R27 to R143.
Yes I know about movff but that's a special case.

>
> On a PIC you can do INC/DEC/SBF/CBF/whatever on *any* memory.

"memory"? Oops... Are you seeing these registers as RAM :-)

> The only instructions a large part of the AVR memory (the "RAM")
> understands is LOAD/STORE.
>
> Just the fact that it is enough with 40 instructions instead of 120+
> is enough of a proof of a cleaner and "nicer" architecture.

Sorry Jan but this really is not proof. Consider the following Z80 and
8080 instructions

e.g.
8080 Z80
==== ===
LDA mem LD A,(mem)
STA mem LD (mem),A
MOV A,B LD A,B
MVI A,123 LD A,123
MVI M,123 LD (HL),123
LHLD mem LD HL,(mem)
SHLD mem LD (mem),HL
MOV A,M LD A,(HL)
MOV M,A LD (HL),A
LDAX B LD A,(BC)
STAX B LD (BC),A
LXI B,123 LD (BC),123

ADD B ADD A,B
ADI 123 ADD A,123
ADD M ADD A,(HL)

DAD B ADD HL,BC
DAD D ADD HL,DE

INR A INC A
INR M INC (HL)

INX B INC BC
INX D INC DE

In the above example there are 14 distinct 8080 nmemonics and 3 distinct
Z80 nmemonics and the examples given generate the exact same binary.

The point I am trying to make is that the Z80 code looks a great deal more consistant than the 8080 code even though there are huge holes in it e.g. "LD (HL),(BC)" is illegal and does not generate any code.

So turning this on it's head, I am sure a better Atmel assembler could easily be used to greatly reduce the number of visible opcodes and make the MCU feel nicer :-)

Friendly Regards
Sergio Masci


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailma
RussellMc
2018-07-14 03:49:43 UTC
Permalink
On 14 July 2018 at 04:28, mike brown <***@n5qmg.com> wrote:
​... ​


> PIC chips have their place in the world, but once I moved to the Arduino
> (Mega328), I haven't really missed them. I can't think of an uglier
> assembly language except maybe the RCA 1802.


​F8 ?


Russell​
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership opti
William Westfield
2018-07-18 06:44:52 UTC
Permalink
> I found this small comparative with an Arduino:
> https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/ <https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/>

I’m pretty sure that post is pretty deeply flawed.
The “unfairness” of comparing a direct register access loop to the Arduino digitalWrite() functions has already been discussed, but I’m pretty sure that the PIC example is also running much slower than it should, probably due to a misconfigured clock.

Using a PIC16f18855 eval board that I have, I was able to get a similar “blink” program to run with T(high) down around 1.3us at 16MHz, which is about 2.5x faster than the Arduino code. That’s more in line with what I’d expect with 1/4 the instruction rate, and 10x-20x overhead for digitalWrite(); Inexplicably, the “default” configuration for the hello-world example program (that does exist for 18855) had the main clock set to 4MHz, and had OSCCON1 set to further divide that by 4 (1MHz end clock rate…); I had to fix those manually.

I put that project here: https://mplabxpress.microchip.com/mplabcloud/ide/import/652ba1be-90a1-47d1-a251-22b71848e450?code=fe7f93ab5b794dc70a56ffa53bb99cc425b885cc <https://mplabxpress.microchip.com/mplabcloud/ide/import/652ba1be-90a1-47d1-a251-22b71848e450?code=fe7f93ab5b794dc70a56ffa53bb99cc425b885cc>

(Beware benchmarks. Especially beware low-effort attempts at benchmarks.)

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http
William Westfield
2018-07-25 10:24:10 UTC
Permalink
>> I found this small comparative with an Arduino:
>> https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/ <https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/>
>
> I’m pretty sure that post is pretty deeply flawed.

Hmm. It isn’t due to clock configuration problems at all.
My 446 board has arrives, and I tried the same benchmark and got the same results as in the blog; 3.4 uS to toggle a bit.
And I made really sure that the clock settings were correct…

It turns out that this seems to be due to a combination of the way that the Code Configurator generates code, and the lack of optimization in the free compiler version.

The default MCC output (pin_manager.h) implements toggling like:

#define IO_RA2_Toggle() do { LATAbits.LATA2 = ~LATAbits.LATA2; } while(0)


The Hello_world project (from a microchip example project) I had for my 16f18855 had:

#define IO_RA0_Toggle() do { LATA0 = ~LATA0; } while(0)

And guess what? The object code produced is quote different. Manually substituting in code, we have:

! do { LATAbits.LATA2 = ~LATAbits.LATA2; } while(0);
0x26: BCF STATUS, 0x0
0x27: MOVLB 0x0
0x28: BTFSS LATA, 0x2
0x29: BSF STATUS, 0x0
0x2A: BTFSC STATUS, 0x0
0x2B: GOTO 0x2D
0x2C: GOTO 0x30
0x2D: MOVLB 0x0
0x2E: BSF LATA, 0x2
0x2F: GOTO 0x32
0x30: MOVLB 0x0
0x31: BCF LATA, 0x2
0x32: GOTO 0x26
0x33: GOTO 0x26
! }
0x34: GOTO 0x26

vs

! do { LATA2 = ~LATA2; } while(0);
0x26: MOVLW 0x4
0x27: MOVLB 0x0
0x28: XORWF LATA, F
0x29: GOTO 0x26
0x2A: GOTO 0x26
! }
0x2B: GOTO 0x26


Grr. Some of the extra goto’s disappear with -O1.

The local MCC generates the slow version for the 18855 as well; it was the online example that had the faster version.
I wonder if there is a way to control this, or whether it was version dependent or something.

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://ma
Forrest Christian (List Account)
2018-07-26 01:17:17 UTC
Permalink
FYI, with -O3 or -Os:

18: do
19: {
20: LATAbits.LATA2=~LATAbits.LATA2;
07FD 3004 MOVLW 0x4
07FE 0698 XORWF LATA, F
21: } while (0);

BTW, the code generated comes from a template, buried in a .jar file if I
remember correctly.


On Wed, Jul 25, 2018 at 4:24 AM, William Westfield <***@mac.com> wrote:

>
> >> I found this small comparative with an Arduino:
> >> https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-
> uno-overview-speed-comparison/ <https://www.bitsnblobs.com/
> blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/>
> >
> > I’m pretty sure that post is pretty deeply flawed.
>
> Hmm. It isn’t due to clock configuration problems at all.
> My 446 board has arrives, and I tried the same benchmark and got the same
> results as in the blog; 3.4 uS to toggle a bit.
> And I made really sure that the clock settings were correct…
>
> It turns out that this seems to be due to a combination of the way that
> the Code Configurator generates code, and the lack of optimization in the
> free compiler version.
>
> The default MCC output (pin_manager.h) implements toggling like:
>
> #define IO_RA2_Toggle() do { LATAbits.LATA2 = ~LATAbits.LATA2;
> } while(0)
>
>
> The Hello_world project (from a microchip example project) I had for my
> 16f18855 had:
>
> #define IO_RA0_Toggle() do { LATA0 = ~LATA0; } while(0)
>
> And guess what? The object code produced is quote different. Manually
> substituting in code, we have:
>
> ! do { LATAbits.LATA2 = ~LATAbits.LATA2; } while(0);
> 0x26: BCF STATUS, 0x0
> 0x27: MOVLB 0x0
> 0x28: BTFSS LATA, 0x2
> 0x29: BSF STATUS, 0x0
> 0x2A: BTFSC STATUS, 0x0
> 0x2B: GOTO 0x2D
> 0x2C: GOTO 0x30
> 0x2D: MOVLB 0x0
> 0x2E: BSF LATA, 0x2
> 0x2F: GOTO 0x32
> 0x30: MOVLB 0x0
> 0x31: BCF LATA, 0x2
> 0x32: GOTO 0x26
> 0x33: GOTO 0x26
> ! }
> 0x34: GOTO 0x26
>
> vs
>
> ! do { LATA2 = ~LATA2; } while(0);
> 0x26: MOVLW 0x4
> 0x27: MOVLB 0x0
> 0x28: XORWF LATA, F
> 0x29: GOTO 0x26
> 0x2A: GOTO 0x26
> ! }
> 0x2B: GOTO 0x26
>
>
> Grr. Some of the extra goto’s disappear with -O1.
>
> The local MCC generates the slow version for the 18855 as well; it was the
> online example that had the faster version.
> I wonder if there is a way to control this, or whether it was version
> dependent or something.
>
> BillW
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>



--
*Forrest Christian* *CEO**, PacketFlux Technologies, Inc.*
Tel: 406-449-3345 | Address: 3577 Countryside Road, Helena, MT 59602
***@imach.com | http://www.packetflux.com
<http://www.linkedin.com/in/fwchristian> <http://facebook.com/packetflux>
<http://twitter.com/@packetflux>
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.
C. Abney
2018-07-26 19:28:08 UTC
Permalink
Sheesh. I copied that (slow) code from the MCC generated files for
some of my own bit-specific register mods.

For example I thought it'd be cool to flash the LED (or turn it off)
with a button press that toggles TMR2 on and off (and wait for a the
interrupt, blah) using that XOR code on the timer on bit.

Little did I know that my sleek and agile Interrupt Service Request
was a hairy monster!

BUT! What is that? I don't get those three gotos at the bottom of the
"fast" code.


On 7/25/18, William Westfield <***@mac.com> wrote:
>
>>> I found this small comparative with an Arduino:
>>> https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/
>>> <https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-speed-comparison/>
>>
>> I’m pretty sure that post is pretty deeply flawed.
>
> Hmm. It isn’t due to clock configuration problems at all.
> My 446 board has arrives, and I tried the same benchmark and got the same
> results as in the blog; 3.4 uS to toggle a bit.
> And I made really sure that the clock settings were correct…
>
> It turns out that this seems to be due to a combination of the way that the
> Code Configurator generates code, and the lack of optimization in the free
> compiler version.
>
> The default MCC output (pin_manager.h) implements toggling like:
>
> #define IO_RA2_Toggle() do { LATAbits.LATA2 = ~LATAbits.LATA2; }
> while(0)
>
>
> The Hello_world project (from a microchip example project) I had for my
> 16f18855 had:
>
> #define IO_RA0_Toggle() do { LATA0 = ~LATA0; } while(0)
>
> And guess what? The object code produced is quote different. Manually
> substituting in code, we have:
>
> ! do { LATAbits.LATA2 = ~LATAbits.LATA2; } while(0);
> 0x26: BCF STATUS, 0x0
> 0x27: MOVLB 0x0
> 0x28: BTFSS LATA, 0x2
> 0x29: BSF STATUS, 0x0
> 0x2A: BTFSC STATUS, 0x0
> 0x2B: GOTO 0x2D
> 0x2C: GOTO 0x30
> 0x2D: MOVLB 0x0
> 0x2E: BSF LATA, 0x2
> 0x2F: GOTO 0x32
> 0x30: MOVLB 0x0
> 0x31: BCF LATA, 0x2
> 0x32: GOTO 0x26
> 0x33: GOTO 0x26
> ! }
> 0x34: GOTO 0x26
>
> vs
>
> ! do { LATA2 = ~LATA2; } while(0);
> 0x26: MOVLW 0x4
> 0x27: MOVLB 0x0
> 0x28: XORWF LATA, F
> 0x29: GOTO 0x26
> 0x2A: GOTO 0x26
> ! }
> 0x2B: GOTO 0x26
>
>
> Grr. Some of the extra goto’s disappear with -O1.
>
> The local MCC generates the slow version for the 18855 as well; it was the
> online example that had the faster version.
> I wonder if there is a way to control this, or whether it was version
> dependent or something.
>
> BillW
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>


--
If you're in my band you can't have too much of a sense of dignity. --
"Weird Al" Yankovic

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
h
Van Horn, David
2018-07-26 20:12:32 UTC
Permalink
Hmm..
I wouldn't generally handle a button with an int, but if I did..

Given vectored ints on the AVR, and a bit of forethought in the code, it would look something like this:
I typically reserve a low register and call it stemp for saving the status register during ints because it's faster than pushing and popping.
I also typically reserve one or two registers for use as temp in interrupts only, calling them Itemp and Itemp2. I don't remember ever needing more than two.

Button_Count could be a count of events, or it could serve as a flag, with the handler setting it back to zero when the event has been dealt with.


Pin_Int_Vector:
In stemp, sreg ; 1 clock cycle Save sreg, might not actually be needed depending on the application.
Inc button_count ;1 clock cycle Given it's handled by an int, I'd want the variable to live in a low register
Out sreg,stemp ; 1 clock cycle restore sreg
Reti. ; 4 or 5 clock cycles.

http://www.avr-tutorials.com/sites/default/files/Instruction%20Set%20Summary.pdf

Getting to the ISR might take a few more clocks, as the running instruction needs to finish, then hardware takes you to the vector table, where you'll have a
Rcall Pin_Int_Vector which will take three or four clocks.

So at 8 MHz, we are talking about 12 clocks or 3uS.

Pretty sure that's right, without pulling out a board and coding it up.
I have also used one or two registers for flags, and it would look something like:

Sbr Flags,Button. ;1 cycle. Not any faster than inc of a register.

Ser Flags ;can doit in one cycle and eliminate the need to save SREG, saving two clocks.

How many microseconds on an 8 MHz PIC, assuming this isn't your only enabled interrupt source?




-----Original Message-----
From: piclist-***@mit.edu <piclist-***@mit.edu> On Behalf Of C. Abney
Sent: Thursday, July 26, 2018 1:28 PM
To: Microcontroller discussion list - Public. <***@mit.edu>
Subject: Re: [PIC] Xpress PIC16F18446 Evaluation Board

Sheesh. I copied that (slow) code from the MCC generated files for some of my own bit-specific register mods.

For example I thought it'd be cool to flash the LED (or turn it off) with a button press that toggles TMR2 on and off (and wait for a the interrupt, blah) using that XOR code on the timer on bit.

Little did I know that my sleek and agile Interrupt Service Request was a hairy monster!

BUT! What is that? I don't get those three gotos at the bottom of the "fast" code.


On 7/25/18, William Westfield <***@mac.com> wrote:
>
>>> I found this small comparative with an Arduino:
>>> https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview-
>>> speed-comparison/
>>> <https://www.bitsnblobs.com/blog/pic16f18446-vs-arduino-uno-overview
>>> -speed-comparison/>
>>
>> I’m pretty sure that post is pretty deeply flawed.
>
> Hmm. It isn’t due to clock configuration problems at all.
> My 446 board has arrives, and I tried the same benchmark and got the
> same results as in the blog; 3.4 uS to toggle a bit.
> And I made really sure that the clock settings were correct…
>
> It turns out that this seems to be due to a combination of the way
> that the Code Configurator generates code, and the lack of
> optimization in the free compiler version.
>
> The default MCC output (pin_manager.h) implements toggling like:
>
> #define IO_RA2_Toggle() do { LATAbits.LATA2 = ~LATAbits.LATA2; }
> while(0)
>
>
> The Hello_world project (from a microchip example project) I had for
> my
> 16f18855 had:
>
> #define IO_RA0_Toggle() do { LATA0 = ~LATA0; } while(0)
>
> And guess what? The object code produced is quote different.
> Manually substituting in code, we have:
>
> ! do { LATAbits.LATA2 = ~LATAbits.LATA2; } while(0);
> 0x26: BCF STATUS, 0x0
> 0x27: MOVLB 0x0
> 0x28: BTFSS LATA, 0x2
> 0x29: BSF STATUS, 0x0
> 0x2A: BTFSC STATUS, 0x0
> 0x2B: GOTO 0x2D
> 0x2C: GOTO 0x30
> 0x2D: MOVLB 0x0
> 0x2E: BSF LATA, 0x2
> 0x2F: GOTO 0x32
> 0x30: MOVLB 0x0
> 0x31: BCF LATA, 0x2
> 0x32: GOTO 0x26
> 0x33: GOTO 0x26
> ! }
> 0x34: GOTO 0x26
>
> vs
>
> ! do { LATA2 = ~LATA2; } while(0);
> 0x26: MOVLW 0x4
> 0x27: MOVLB 0x0
> 0x28: XORWF LATA, F
> 0x29: GOTO 0x26
> 0x2A: GOTO 0x26
> ! }
> 0x2B: GOTO 0x26
>
>
> Grr. Some of the extra goto’s disappear with -O1.
>
> The local MCC generates the slow version for the 18855 as well; it was
> the online example that had the faster version.
> I wonder if there is a way to control this, or whether it was version
> dependent or something.
>
> BillW
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>


--
If you're in my band you can't have too much of a sense of dignity. -- "Weird Al" Yankovic

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://ma
William Westfield
2018-07-26 23:10:35 UTC
Permalink
> BUT! What is that? I don't get those three gotos at the bottom of the "fast" code.

I dunno. (That is “disassembly view” rather than .asm output from the compiler; maybe they’re just sloppy cleanup)
They do seem to go away with -O1.

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo
Jan-Erik Söderholm
2018-07-26 23:48:55 UTC
Permalink
I thought that was one of the "features" in the "free" version of XC8.

Is -O1 available in the "free" version?



-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För William Westfield
Skickat: den 27 juli 2018 01:11
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: [PIC] Xpress PIC16F18446 Evaluation Board


> BUT! What is that? I don't get those three gotos at the bottom of the "fast" code.

I dunno. (That is “disassembly view” rather than .asm output from the compiler; maybe they’re just sloppy cleanup) They do seem to go away with -O1.

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman
William Westfield
2018-07-28 00:34:37 UTC
Permalink
> Is -O1 available in the "free" version?

Apparently.


Heh. The “nEDBG” chip on this board is supposed to be a SAMD21E18A, which is a pretty substantial chip (256k flash!) to contain “only” a uploader and a serial port.
I wonder if there is more there, or if the firmware could be “upgraded” to provide, say, full debugging…

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options
John Gardner
2018-07-28 01:09:25 UTC
Permalink
Probably loaded with snoopery...

On 7/27/18, William Westfield <***@mac.com> wrote:
>
>> Is -O1 available in the "free" version?
>
> Apparently.
>
>
> Heh. The “nEDBG” chip on this board is supposed to be a SAMD21E18A, which
> is a pretty substantial chip (256k flash!) to contain “only” a uploader and
> a serial port.
> I wonder if there is more there, or if the firmware could be “upgraded” to
> provide, say, full debugging…
>
> BillW
>
> --
> http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://
AB Pearce - UKRI STFC
2018-07-28 08:22:43 UTC
Permalink
Yes there is more there, part of that memory is used for a 'USB memory stick' with about 4 or 5 files on it.
You have discovered the serial port.
There is also a debugger apparently, just that MPLAB-X needs to catch up - I believe the capability may be in MPLAB-X 5 which was released very recently.



-----Original Message-----
From: piclist-***@mit.edu <piclist-***@mit.edu> On Behalf Of William Westfield
Sent: 28 July 2018 01:35
To: Microcontroller discussion list - Public. <***@mit.edu>
Subject: Re: [PIC] Xpress PIC16F18446 Evaluation Board


> Is -O1 available in the "free" version?

Apparently.


Heh. The “nEDBG” chip on this board is supposed to be a SAMD21E18A, which is a pretty substantial chip (256k flash!) to contain “only” a uploader and a serial port.
I wonder if there is more there, or if the firmware could be “upgraded” to provide, say, full debugging…

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.
William Westfield
2018-07-28 09:36:24 UTC
Permalink
> You have discovered the serial port.
> There is also a debugger apparently, just that MPLAB-X needs to catch up


Hmm. I was using it on my Mac, which is now new enough that it doesn’t show a lot of info about the USB devices…. (Sigh)


If I attach it to a windows system with recent Atmel Studo installed, it shows up a composite USB device with FOUR (!) sub-devices.
There is the “Curiosity Virtual COM Port” and the fake disk, but also a HID device and a “Curiosity Data Gateway.”

AS recognizes it as a PIC device and offers appropriate links, but claims the target is “unsupported” in the programming dialog.

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership opt
Xiaofan Chen
2018-07-28 11:34:50 UTC
Permalink
On Sat, Jul 28, 2018 at 5:36 PM, William Westfield <***@mac.com> wrote:
>> You have discovered the serial port.
>> There is also a debugger apparently, just that MPLAB-X needs to catch up
>
>
> Hmm. I was using it on my Mac, which is now new enough that it doesn’t show a lot of info about the USB devices…. (Sigh)
>
>
> If I attach it to a windows system with recent Atmel Studo installed, it shows up a composite USB device with FOUR (!) sub-devices.
> There is the “Curiosity Virtual COM Port” and the fake disk, but also a HID device and a “Curiosity Data Gateway.”
>
> AS recognizes it as a PIC device and offers appropriate links, but claims the target is “unsupported” in the programming dialog.

I think in the long run, Atmel Studio will be gone and MPLAB will
support AVR and Atmel ARM.
In fact, MPLAB X 5 now has beta support for AVR.
http://www.microchip.com/home/announcing-beta-support-for-avr-devices-in-mplab-x-ide


--
Xiaofan

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://ma
William Westfield
2018-07-18 23:39:01 UTC
Permalink
>
> Once the file has been flashed, does it then delete the file?

Heh. I was playing with a PIC16f18855 eval board (which has a similar “copy to disk” based loader) on my Mac, and it seemed that “sometimes” copying the .hex fie to the board would program the board and the .hex file (on the board) would “disappear.” Other times, I would up with multiple copies showing up in the finder, and had to manually delete them before I could copy a new version over. I think the desktop OS might be “caching” things (“I copied the file there, so it must be there!”). Or something.

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/ma
Harold Hallikainen
2018-07-19 01:39:49 UTC
Permalink
> I think the
> desktop OS might be “caching” things (“I copied the file there, so
> it must be there!”). Or something.
>
> BillW

Need to mark the file "volatile?"

Harold


--
FCC Rules Updated Daily at http://www.hallikainen.com
Not sent from an iPhone.
--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist
Jan-Erik Söderholm
2018-07-19 08:57:52 UTC
Permalink
Might it be that, if the Mac thinks that the file is already there, it
creates something like a xxxxx.hex(2) file, like a Windows system does?

And the board only triggers on plain .hex files...

Jan-Erik.

-----Ursprungligt meddelande-----
Från: piclist-***@mit.edu <piclist-***@mit.edu> För William Westfield
Skickat: den 19 juli 2018 01:39
Till: Microcontroller discussion list - Public. <***@mit.edu>
Ämne: Re: [PIC] Xpress PIC16F18446 Evaluation Board

>
> Once the file has been flashed, does it then delete the file?

Heh. I was playing with a PIC16f18855 eval board (which has a similar “copy to disk” based loader) on my Mac, and it seemed that “sometimes” copying the .hex fie to the board would program the board and the .hex file (on the board) would “disappear.” Other times, I would up with multiple copies showing up in the finder, and had to manually delete them before I could copy a new version over. I think the desktop OS might be “caching” things (“I copied the file there, so it must be there!”). Or something.

BillW

--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist


--
http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu
Loading...