Skip to content

Commit 55256ea

Browse files
committed
MPAE-18679 - grammatical and formatting updates to README.MD, replacing some images with higher quality and resizing to meet formatting guidelines, upgrading MPLABX project to latest versions
1 parent 9d2de0d commit 55256ea

File tree

4 files changed

+48
-38
lines changed

4 files changed

+48
-38
lines changed

25csm04.X/nbproject/configurations.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181
<targetDevice>PIC18F56Q24</targetDevice>
8282
<targetHeader></targetHeader>
8383
<targetPluginBoard></targetPluginBoard>
84-
<platformTool>nEdbgTool</platformTool>
84+
<platformTool>noID</platformTool>
8585
<languageToolchain>XC8</languageToolchain>
8686
<languageToolchainVersion>3.00</languageToolchainVersion>
8787
<platform>3</platform>

README.md

Lines changed: 47 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@
88
</picture>
99
</a>
1010

11-
# How to Set Up a Curiosity Nano Explorer 25CSM04 EEPROM using a PIC18F56Q24 MCU
11+
# Interfacing the 25CSM04 EEPROM on the Curiosity Nano Explorer development board using a PIC18F56Q24 Curiosity Nano
1212

13-
This example demonstrates the setup of 25CSM04 EEPROM on a PIC18F56Q24 microcontroller (MCU) . The 25CSM04 is an 4M bit Serial Peripheral Interface (SPI) serial EEPROM.
13+
This example demonstrates the setup and configuration of the 25CSM04 EEPROM using the PIC18F56Q24 microcontroller. The 25CSM04 is a 4 Mbit Serial Peripheral Interface (SPI) serial EEPROM, designed to provide reliable, high-density non-volatile memory storage. By interfacing the 25CSM04 using the PIC18F56Q24 Curiosity Nano, this example highlights how to efficiently store and retrieve data using SPI communication, making it ideal for applications that require robust data retention and fast access times.
1414

1515
## Related Documentation
1616

17-
- [25CSM04 Data sheet](https://ww1.microchip.com/downloads/aemDocuments/documents/MPD/ProductDocuments/DataSheets/25CSM04-4-Mbit-SPI-Serial-EEPROM-with-128-Bit-Serial-Number-and-Enhanced-Write-Protection-20005817D.pdf)
17+
- [25CSM04 Data sheet](https://ww1.microchip.com/downloads/aemDocuments/documents/MPD/ProductDocuments/DataSheets/25CSM04-4-Mbit-SPI-Serial-EEPROM-with-128-Bit-Serial-Number-and-Enhanced-Write-Protection-20005817D.pdf)
1818
- [PIC18F56Q24 Curiosity Nano User Guide](https://ww1.microchip.com/downloads/aemDocuments/documents/MCU08/ProductDocuments/UserGuides/PIC18F56Q24-CNANO-UserGuide-DS50003618.pdf)
1919
- [Curiosity Nano Explorer User Guide](https://ww1.microchip.com/downloads/aemDocuments/documents/MCU08/ProductDocuments/UserGuides/CNANO-Explorer-UserGuide-DS50003716.pdf)
2020

@@ -28,67 +28,77 @@ This example demonstrates the setup of 25CSM04 EEPROM on a PIC18F56Q24 microcont
2828

2929
## Hardware Used
3030

31-
- [PIC18F56Q24 CURIOSITY NANO EVALUATION KIT ](https://www.microchip.com/en-us/development-tool/ev01e86a)
32-
33-
![pic18f56q24](images/pic18f56q24.png)
34-
35-
- [Curiosity Nano Explorer ](https://www.microchip.com/en-us/development-tool/ev58g97a)
31+
- [PIC18F56Q24 Curiosity Nano Evaluation Kit ](https://www.microchip.com/en-us/development-tool/ev01e86a)
32+
- [Curiosity Nano Explorer](https://www.microchip.com/en-us/development-tool/ev58g97a)
33+
- USB type C cable
3634

3735
![Curiosity Nano Explorer](images/curiositynanoexplorer.png)
3836

39-
40-
- USB type C cable
41-
4237
## Setup
4338

44-
The [user guide](https://ww1.microchip.com/downloads/aemDocuments/documents/MCU08/ProductDocuments/UserGuides/CNANO-Explorer-UserGuide-DS50003716.pdf) for the Curiosity Explorer Nano board provides the pins mapping information neede for this example.
39+
The [userguide](https://ww1.microchip.com/downloads/aemDocuments/documents/MCU08/ProductDocuments/UserGuides/CNANO-Explorer-UserGuide-DS50003716.pdf) for the Curiosity Explorer Nano board provides detailed information about the pin mapping between the Curiosity Explorer board and the PIC18F56Q24 Curiosity Nano board being used in this example.
4540

4641
![Explorer25CSM04](images/Explorer25CSM04.png)
4742

48-
From the diagram above, SPI CS, SPI MOSI, SPI MISO and SPI SCK will be used to communicate with the 25CSM04 I2C EEPROM.
49-
43+
Based on the diagram above from the Curiosity Explorer users guide, the SPI CS, SPI MOSI, SPI MISO, and SPI SCK lines will be used to communicate with the 25CSM04 SPI EEPROM.
44+
45+
## MCC Setup
46+
The detailed step by step instructions required to recreate this example are listed below:
5047

51-
## MCC Setup
52-
All instructions required to recreate this example are listed below.
48+
Begin by setting up UART to enable data display on the terminal.
5349

54-
First is UART so that data can be seen on the terminal.
5550
### UART Setup
56-
- Once MCC is open, add the UART driver and select UART2 in dependency selector
57-
- Make sure Redirect Printf to UART is enabled<br>
51+
52+
The UART configuration should appear as shown below.
53+
- With MCC open, add the UART driver and select UART2 in the dependency selector.
54+
- Ensure that "Redirect Printf to UART" is enabled.
55+
- The UART configuration should appear as shown below.<br>
56+
5857
![UART setup](images/uart.png)
59-
- The UART2PLIB will be left as is
58+
59+
- No changes are required for UART2PLIB
60+
6061
<br><br>
6162

62-
### SPI Setup
63-
- Add SPI driver and select SPI1 as SPI Host PLIB Selector
64-
- Set the Requested speed to 4000 KHz and make sure the SPI Interrupt is enabled
65-
- The SPI configuration can also be found in the image below<br>
63+
### SPI Setup
64+
- Add the SPI driver and select SPI1 as the SPI Host PLIB Selector.
65+
- Set the requested speed to 4000 kHz and ensure that the SPI interrupt is enabled.
66+
- The SPI configuration is also shown in the image below.
67+
6668
![SPI setup](images/spi.png)<br>
69+
6770
![SPIPlib setup](images/spiplib.png)
68-
<br><br>
71+
72+
<br>
6973

7074
### Pins Setup
71-
- Select the UART and SPI pins from the diagram below
75+
- Select the appropriate UART and SPI pins as indicated in the diagram below.
76+
7277
![ExplorerMCP23008](images/explorerpic1856q24mapping.png)<br>
73-
- The MCC for pins is shown below<br>
78+
79+
- The MCC configuration for the pins is shown below.
80+
7481
![pins setup](images/pins.png)<br>
82+
7583
![pins1 setup](images/pins1.png)<br>
76-
<br><br>
7784

78-
- Now you can click on <b>"Generate"</b> and thats all you need from MCC.
79-
- Add the `25CSM04.c` and `25CSM04.h` driver code to your project.
80-
- Modify the `main.c` according the screenshot below. <br>
85+
<br>
86+
87+
- Click on "Generate" to complete the configuration in MCC.
88+
- Add the `25CSM04.c` and `25CSM04.h` driver code to the project.
89+
- Modify `main.c` as shown in the screenshot below.
90+
8191
![screenshot](images/main.png)<br>
82-
- This code snippet calls writeReadByteTest(0x0000), which performs consecutive read and write checks from address 0x0000.
83-
- It displays the write and read values and verifies whether these value match.
92+
93+
- This code snippet calls writeReadByteTest(0x0000), which performs consecutive read and write operations starting from address 0x0000.
94+
- The code displays the written and read values and verifies whether these values match.
8495

8596
## Operation
8697

87-
After you program the device, you can see the output in the terminal, whether the tests have passed or failed.<br>
98+
After programming the device, the terminal displays the output indicating whether the tests have passed or failed.
99+
88100
![output](images/output.png)
89101

90102
## Summary
91103

92-
This demo shows how to interface the 25CSM04 SPI EEPROM on the Curiosity Nano Explorer board using a PIC18F56Q24.
93-
94-
The demo has few tests where it writes to a specific location and it reads the same address to verify whether the read and write operations work.
104+
This demonstration shows how to interface the 25CSM04 SPI EEPROM on the Curiosity Nano Explorer board using a PIC18F56Q24 microcontroller. In this example, several tests are performed to validate the functionality of the EEPROM interface. Data is written to a specific memory location, and then read back from the same address to ensure that both the write and read operations are working correctly. The results of these tests are displayed on the terminal, providing clear feedback on the success or failure of each operation.

images/curiositynanoexplorer.png

894 KB
Loading

images/pic18f56q24.png

-199 KB
Binary file not shown.

0 commit comments

Comments
 (0)