Find Jobs
Hire Freelancers

Embedded software - nRF5 chip - 2 BUTTON press functioning

$15-25 USD / hour

Completed
Posted over 5 years ago

$15-25 USD / hour

~Just I am working with nrf52 chip, playing with buttons and leds, ~I am able to press 1 button at a time and obtain a output(say blinking LED) which I want, ~Also, I worked with long press of one button ( SAY ONE BUTTON PRESSED FOR MORE THAN 2 SECONDS) and made an distinguish between the outputs obtained depending on whether it is short push or long push on button. **~ Now, I facing difficulties while I want to obtain an output ONLY WHEN TWO BUTTONS ARE PRESSED. In detail, i WANT TO BLINK LED only when 2 BUTTONS ARE PRESSED FOR 2 SECONDS, So this is the task. other info: I previously used BSP button handler, I have ideas of how to implement my task, but I am not good at coding, so need your help. I think if you can use CLOCK, TIMER, and create an Event for storing the status of buttons in a flag, the task is completed. Also, bit masking helps in detection of 2 buttons. I can provide you user state diagram and also my sample lopps, Just need the help for implementing.
Project ID: 17538416

About the project

10 proposals
Remote project
Active 6 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
Hi, Actually I never touch nrf52 chip and it's BSP right now. But I'm Familiar with the problem you are faced now. Actually you don't have to use any peripheral from NRF52 chip, maybe you just need accurate delay from it. You just need to change the read button style. I have faced this problem in some occasion, and the way I solve this is use non blocking way to scan state of button, rather than using blocking way to read button state. This is my propposed method(we could applied it to NRF52 BSP after this, just chat me): let's say that delay_ms() function is delay system 1ms. #define ScanButtonTimeOut 200 //2 seconds mean 200 * 10ms enum buttonstate{ release,pressed } typedef struct button_struct{ //some state struct buttonstate b_state; int pressedcount; //count how long it's already pressed }button_struct; void main() { button_struct b1,b2; //struct for button1 and button2 state while(1) { if(button1 == Pressed){ b1.pressedcount++; if([login to view URL]>200) b1.b_state = pressed; //change the state of button1 }else{ [login to view URL] = 0; //reset prssed count } //Do the same for Button 2 //Set Led on if button 1 & button 2 state is pressed delay_ms(10); } } For the detail, lets discuss it over chat. I could do it over NRF52 BSP too, so, don't worry. Best regards, Rijal
$22 USD in 20 days
4.4 (19 reviews)
4.6
4.6
10 freelancers are bidding on average $19 USD/hour for this job
User Avatar
Good day, I have read the details of your work and I am confident that I can help you with this. Please contact me so that we can go over the details of your job, thank you.
$16 USD in 40 days
4.8 (44 reviews)
6.3
6.3
User Avatar
Hi Sir, We have read your project and we are able to do this project for you. Lets talk to us. We are professional engineers and developers who do such projects from the last eight years. We offer you our skills for this project at very low rates comparatively without compromising the quality of work. Let me introduce you to our company TURKTRONICS. We are TURKTRONICS. We are professionals with 8+ years of experience in Circuit designs, PCB designs, embedded system solutions, mobile app development, programming and software development. We provide complete end to end solutions for all kind of development projects. IOT is our strong point. In this bid, prototyping and shipping cost is not included however paying extra slight of money to include prototypes. We have the manufacturing facility and we produce the very high standard PCB boards and send ready products to customers doorsteps via DHL. We care about our clients and help them to get out of any potential problem throughout the projects and also give post completion technical support if ever required. We are very much looking forward to hear from you on this in coming days! Cheers!!! Ahmad Lead Technical Engineer TURKTRONICS An Internet of Things Company !
$20 USD in 40 days
4.7 (20 reviews)
6.1
6.1
User Avatar
Hello, Deep is here from India. I can help you to develop logic for long press button press detection.
$15 USD in 25 days
5.0 (30 reviews)
5.3
5.3
User Avatar
Hello Bro , How are you? , Hope all is fine !! I have worked on many applications using Nordic nRF52 chip (in particular the D52 Kit). I develop using KEIL IDE and I deliver on time . -------------------------------------------------------------------------------------------------------------------------------------------- I have long experience with 8-bit , 16-bit and 32-bit micro-controllers. I work with Microchip (PIC) , Atmel (AVR , SAM) , ST (STM) , TI (MSP) and NXP (LPC) micro-controllers. I use KEIL IDE , Atmel Studio , Code Composer Studio and MPLABX IDE . I deliver tested , neat and well-commented code that can be reused or modified for future development. More to be discussed once you contact me . BR, M.T.
$16 USD in 40 days
4.8 (25 reviews)
5.6
5.6
User Avatar
hello i am a computer engineer,i have masters in computer engineering,i have experience for more than 7 years in arduino and electronics
$15 USD in 40 days
4.9 (15 reviews)
4.7
4.7
User Avatar
I have an more than 5 years experience in embedded systems and also o worked on nfr52 beacon with segger studio or keil . so I can do your job within the time limit with your satisfaction.
$38 USD in 30 days
5.0 (6 reviews)
4.1
4.1
User Avatar
Hello there I am a professional embedded systems engineer and i can help you out Please contact me ASAP Best regards
$16 USD in 3 days
5.0 (1 review)
2.2
2.2

About the client

Flag of SWEDEN
KARLSKRONA, Sweden
5.0
6
Payment method verified
Member since Nov 11, 2017

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.