• AVR Freaks

Hot!Harmony 3.x documentation?

Author
RodoPIC
Super Member
  • Total Posts : 187
  • Reward points : 0
  • Status: offline
2019/08/20 13:30:24 (permalink)
0

Harmony 3.x documentation?

Hi all,
I installed harmony 3.4 and I see there are folders named "Docs" with HTML and .chm files in the framework destination folder.  Is clicking on the files the only way to access the documentation for harmony 3.x? 
Thanks
#1

19 Replies Related Threads

    mjolhe01
    Starting Member
    • Total Posts : 16
    • Reward points : 0
    • Joined: 2019/08/28 08:00:56
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2019/09/20 10:10:33 (permalink)
    0
    Not sure if this is what you are looking for, but here is what I ran into when I first got into Harmony 3. This was my first attempt to use Harmony of any sort, so this might be obvious to others with experience with similar structure.  It was not intuitive to me for whatever reason. Seems like some help files are easy to navigate to and others are not. 
     
    For graphics I more or less stumbled into the help files here:
    https://microchip-mplab-harmony.github.io/gfx
     
    When I was looking for help with timers, I knew it was in the core section so I just replaced the 'gfx' with 'core'
    https://microchip-mplab-harmony.github.io/core
     
    It looks like you can just replace the name at the end for the relevant topic (or leave it blank for the main page).
     
    In some cases you can go to the harmony main web page and navigate to the help pages quickly. For instance with Motor Control, you can just go to the main page, scroll down to the motor control page, and there is a link in the wiki that says 'MPLAB Harmony 3 Motor Control Help'
    https://www.microchip.com/mplab/mplab-harmony
    https://github.com/Microchip-MPLAB-Harmony/motor_control/wiki
    https://microchip-mplab-harmony.github.io/motor_control/
     
    #2
    JPortici
    Super Member
    • Total Posts : 1021
    • Reward points : 0
    • Joined: 2012/11/17 06:27:45
    • Location: Grappaland
    • Status: offline
    Re: Harmony 3.x documentation? 2019/09/21 12:12:31 (permalink)
    0
    the documentation you see on the CHM files is the exact copy on the one on github.
     
    As github is awesome, if you find errors or that it lacks information, you can suggest changes :D
    #3
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2019/10/09 15:38:01 (permalink)
    0
    In the doc folder in each repo that you have downloaded, there should be a .chm (compiled help) file and a .pdf file.  Double-click on either one for help for that repo.  (The gfx repo only has a .chm, the .pdf became too big.)
    In the docs folder, there are hundreds of .html files.  You want to double-click on index.html to start at the top level.
    In all three cases, the documentation is actually the same, just choose the format you prefer.
     
    The online GitHub page for Harmony 3 ( https://github.com/microchip-mplab-harmony)  has links to each repo.  If you navigate to one of the repos, you will see the same files I already mentioned.  However along the top, just below the name of the repo, are a bunch of tabs: Code, Issues, …  Click on Wiki and you will be taken to the wiki for that repo.  There you will find a lot more documentation that is not part of the downloaded repo, typically including tutorials and get started guides.
    #4
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 14:54:10 (permalink)
    0
    The GitHub "wiki" does not appear to be searchable. And the .chm files are separate for each module. So I am correct that there's no unified, searchable Harmony 3 documentation?!
    #5
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 16:55:49 (permalink)
    0
    In the past, most repos had both .pdf and .chm files in the /doc folder.  Now some have just the .chm.
     
    A .chm file is searchable, but only for that one repo.  You are correct in that there is no global search across all of Harmony 3.  You need to know which repo you want to look in.
    #6
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:05:10 (permalink)
    0
    Unfortunately, I don't. I'm trying to find APIs for Peripheral Pin Select and I can't find them.
     
    They really should have a searchable wiki.
     
    #7
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:10:44 (permalink)
    0
    Peripheral Pin Selection is not done using an API, rather it is done using the Tools->Pin Configuration dialog in MHC.  That's why you're aren't able to find it.
    #8
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:14:53 (permalink)
    0
    I want to do it dynamically at run time, sharing a pin with multiple peripherals.
    #9
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:17:19 (permalink)
    0
    For which processor?
    #10
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:28:27 (permalink)
    0
    PIC32MK1024MCF064. Does it matter? Does Harmony offer APIs for some processors and not others?
    #11
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:32:53 (permalink)
    0
    No, as far as I know there are no APIs to modify the Peripheral Pin Selection functionality.  But the MIPS processors (PIC32) and ARM processors (SAMxxx) do it quite differently.  I needed to know so I can provide a better answer for you.  I'll try to get back to you later tonight with some examples.  I'm actually doing this on another project right now, but it is with an ARM processor.
    #12
    ric
    Super Member
    • Total Posts : 27057
    • Reward points : 0
    • Joined: 2003/11/07 12:41:26
    • Location: Australia, Melbourne
    • Status: online
    Re: Harmony 3.x documentation? 2020/05/17 17:34:27 (permalink)
    5 (1)
    It sounds like the answer is going to be "Ignore Harmony and do the pin switching by writing the PPS peripheral directly yourself..."
     

    I also post at: PicForum
    Links to useful PIC information: http://picforum.ric323.co...opic.php?f=59&t=15
    NEW USERS: Posting images, links and code - workaround for restrictions.
    To get a useful answer, always state which PIC you are using!
    #13
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:37:05 (permalink)
    0
    Yes, but I'm going to give some hints on how to do this without having to dive into the datasheet for the processor.  But I want to come up with a concrete example.
    #14
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:43:42 (permalink)
    0
    If it's just modifying the bare registers , I know how to do it. I was just hoping there was a higher level API.
     
    Harmony 2 had some APIs, but perhaps they jettisoned them because, as you say, the SAMs are so different.
    #15
    Tom Crosley
    New Member
    • Total Posts : 26
    • Reward points : 0
    • Joined: 2016/07/26 15:56:24
    • Location: Microchip Technology
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 17:52:38 (permalink)
    0
    Okay, if you are familiar with the registers, I won't give a specific example.  But what I have found to be easiest in the past, is to start out with a project with all of the peripherals that you want put into the Project Graph using MHC, but don't assign any pins in the Pin Configuration dialog.  Generate code for this base configuration by clicking on the <Code> button.
     
    Then one at a time, assign the pins for one of the peripherals and hit the <Code> button in MHC, with Merge Strategy set to ALL, and capture the changes that would have been made for that peripheral -- but don't accept them.  Then undo those pin settings, and go to the next peripheral.
     
    I find this easier and less error prone that trying to decipher the datasheet.
    #16
    NKurzman
    A Guy on the Net
    • Total Posts : 18672
    • Reward points : 0
    • Joined: 2008/01/16 19:33:48
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/17 22:41:43 (permalink)
    0
    V1.XX and 2.XX had things like:
     INPUT_PIN_RPF12 
     OUTPUT_PIN_RPG6 
    and
    plib_ports.h
    PLIB_PORTS_RemapInput()
     
    try searching the framework or help for them.  ( Or parts of them since they are probably renamed.)
    #17
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/18 05:12:30 (permalink)
    0
    NKurzman
    try searching the framework or help for them.  ( Or parts of them since they are probably renamed.)



    Well as I said, it's essentially impossible to search the H3 docs. The GitHub "wiki" is not searchable (I don't know how MCHP got the idea that GitHub is a suitable replacement for a wiki - it's not) and the individual .chm doc files are scattered in different directories so there's no practical way to search them.
     
    I grepped the source code and found some thing that look like the old API, but they're not being generated into my source code by MHC and I don't know how to get them. I suspect the stuff I found with grep is just leftovers from H2 that they didn't remove.
     
    #18
    NKurzman
    A Guy on the Net
    • Total Posts : 18672
    • Reward points : 0
    • Joined: 2008/01/16 19:33:48
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/18 05:18:07 (permalink)
    0
    There has to be something to set the PPS.
    They are doing it.
    #19
    realexander
    Super Member
    • Total Posts : 228
    • Reward points : 0
    • Joined: 2006/04/08 09:50:42
    • Location: 0
    • Status: offline
    Re: Harmony 3.x documentation? 2020/05/18 05:31:55 (permalink)
    0
    In the code that MHC generates, it just writes directly to the PPS registers. No API calls.
    #20
    Jump to:
    © 2020 APG vNext Commercial Version 4.5