How do I establish CAN protocol using PIC 16F877A? - pic

I want to establish CAN protocol using PIC 16F877A. But PIC 16F877A does not have CAN TX and CAN RX ports. What should I do?

Because the PIC 16877A don't have a CAN controller you need an external CAN controller and a CAN transceiver.
for example:
CAN controller: MCP2515 (connected with SPI to your PIC)
CAN transceiver: MCP2551 (connected to your CAN controller)

Related

Can the NXP PN532 work on UART at a 38400 baud rate?

I am trying to integrate an RFID1356MIFARE, which uses NXP PN532, with an ESP32-EVB using their UART capabilities.
The NXP docs states that the PN532 is able to communicate on High Speed UART.
I am trying to use 38400 because that's the baud rate fixed by the reader that I'm using.
I've found a modified Adafruit PN532 library that added HSU support. This library states that HSU uses 115200 baud rate.
Now, I've modified PN532_HSU.cpp, where we can find:
void PN532_HSU::begin()
{
_serial->begin(115200);
}
into
void PN532_HSU::begin()
{
_serial->begin(38400, SERIAL_8N1, 36, 4);
}
Unfortunately, I haven't been able to establish communication between the reader and the ESP using this method.
I am able to get a readable output using normal Serial.read(), so UART communication works, but that's not how you read MIFARE cards.
I don't know what the problem is.
What do you think ?
[EDIT]
I went through the documentation and here is what i suggest: If you have a USB to serial device use it to directly connect reader module to computer else connect it directly using mini USB port in module. the follow following steps:
Put device in UART/ USB CDC mode depending on how you connected device to computer. Exact method to do this is provided in operation section of documentation
Use picoterm / screen or other serial terminal (if you are using Linux) or just use Arduino serial monitor with correct baud rate to connect device.(115200 for USB and 38400 for UART)
Type in commands listed in COMMAND SET FOR CDC AND UART MODE section in documentation to check if module is working or not.
Place some cards over reader to check what response does module sends when card is detected.
Use this information to develop your own library for reader.
It will not work with regular PN532 libraries. Instead you'll need to use regular Serial read and write to communicate.
[Original]
PN532 datasheet says host interface is selected by pulling up/down I0, I1 pins of device. For HSU both pins must be pulled down. This is implemented in hardware so you need to verify if the mode you want to use is set.
Looking into the link you posted for module, it says that it uses another micro-controller on board to extend communication capabilities, so maybe you need to use driver for that specific controller firmware? The link seems to have document explaining how to setup different communication system in Document section, please have a look there and check if it works.
Link: https://www.olimex.com/wiki/MOD-RFID1356MIFARE

What Windows 10 driver model is appropriate for implementing IP link layer?

I'm looking to write a simple Windows driver to enable running TCP/IP over a proprietary RF module. The module already provides Ethernet-style data packets with source/destination MAC, so I just need to layer IP packets (generated by the regular Microsoft IPv4 subsystem), set the MTU appropriately so they will be the right size, and then call the module's serial API. I'll need to be able to handle transmit statuses and implement an ARP protocol as well. I want the driver to expose a new interface similar to a wifi or ethernet card in Network Connections and use the normal Windows IP stack.
The module is UART and might be connected via FTDI chip, RS-232 converter, or native UART on an IoT Core board, so it will just be talking to a generic serial port. I am fine with only running on Windows 10, but I'm still not sure what to use. Can I use the UWP VPN provider? Do I need to write an NDIS miniport driver, or an interface provider? Also, how will I handle the driver needing complete control over the serial port at all times? I can't write a serial driver as it might be connected via many different types of serial ports.

Emulating a USB device

I have a microsoft xbox one controller. Is there a way I could check the data that the controller sends to windows, and then send it out through a different USB port?
It would be possible under condition that:
PC has USB device controller with related port
You have drivers that will capture traffic from XBox controller, pass it to device port and route all traffic coming to device port to XBox controller (effectively working as USB HUB).

Arduino-ESP8266 Sending URL from a client browser connected to the esp8266 AP and receiving the entered URL in the arduino board

I am working on a project where in I have coupled the arduino uno board and an ESP8266 module. I want to send an URL from my browser provided I am connected to the ESP8266 01 AP. For ex, is it possible to send "www.xyz.com" from the browser and it should be received at the ESP8266 module and the request should dumped to the arduino board.
Yes, this can be done by making the ESP a captive portal, especially since you have set the ESP as an access point. There is an example in the esp wifi library for Arduino. Check out https://github.com/esp8266/Arduino and the examples. In addition, there is a nice WifiManager lib that goes further with a demo of a captive portal at https://github.com/tzapu/WiFiManager
HTH

PIC 18 controller as serial to ethernet bridge

I am planning to use PIC18F6*** serial microntroller for my project serial-ethernet converter. Once I will put my hex code in PIC micro-controller for send recieve serial port data I will use the windows hyper-terminal and for checking the ethernet data is there any application in windows?
If my question is not clear I am ready to explain it better... please let me know.....
Hyper Terminal, or Tera Term; assuming this is just a simple text based exchange from the TCPIP port to the serial port.
You may also want to use Wireshark to view the ethernet data going between your PC and the micro for troubleshooting

Resources